Why Export to CSV?
While Touchstone files are the universal RF format, many engineers need S-parameter data in CSV for:
- Excel: custom charts, tolerance calculations, vendor comparison sheets
- Python (pandas, numpy, matplotlib): batch analysis, custom plots, ML datasets
- MATLAB: signal processing pipelines that expect CSV input
- Reporting: generate summary tables without EDA software
CSV Format Options
| Format | Structure | Best For |
|---|---|---|
| Wide CSV | One row per frequency, all S-params as columns | Detailed analysis, plotting in Excel/Python |
| Summary CSV | One row per file — BW, IL, rejection metrics | Vendor qualification, lot comparison |
| Marker CSV | One row per marker reading per file | Specific frequency comparison |
Wide CSV Column Structure
Header row: Freq_GHz, S11_dB, S11_deg, S21_dB, S21_deg, S12_dB, S12_deg, S22_dB, S22_deg Data rows: 1.0000, -0.45, 168.2, -15.3, -47.6, -38.2, -51.2, -0.62, 163.4 1.0050, -0.47, 167.9, -15.1, -48.1, -38.5, -51.8, -0.65, 163.0 ...
Export in RF View
- Load .s2p file in RF View S-Parameter Plot or SNP Converter
- Tap the export icon → select "Export as CSV"
- Choose format: Wide (full data) or Summary (metrics only)
- Set frequency range and step if needed (resample before export)
- Save to Downloads folder or share via email/Drive
Reading Exported CSV in Python
import pandas as pd
import matplotlib.pyplot as plt
df = pd.read_csv('filter.csv')
plt.plot(df['Freq_GHz'], df['S21_dB'])
plt.xlabel('Frequency (GHz)')
plt.ylabel('S21 (dB)')
plt.title('Filter Insertion Loss')
plt.grid(True)
plt.show()
Summary CSV for Batch Comparison
Filename, f0_GHz, IL_dB, BW3dB_MHz, Rejection_dB filter_A.s2p, 1.8150, 1.8, 42.5, 54.3 filter_B.s2p, 1.8170, 2.1, 40.1, 49.8 filter_C.s2p, 1.8140, 1.9, 41.3, 52.7
RF View CSV Export: Export any .s2p (or multiple files) to Wide CSV or Summary CSV with one tap. Files go to Android Downloads folder for easy email or cloud transfer. Free on Android.