scikit-rf
Object Oriented Microwave Engineering
Decision gist · record as of 2026-08-14
Yes. scikit-rf is a mature, actively maintained library with no known vulnerabilities, low install friction, and permissive 3-clause BSD licensing. It fills a clear niche in RF and microwave engineering where open-source alternatives are limited. Install it if you work with network parameters or Touchstone files in Python.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires Python 3.10 or later.
- Low friction install with a pure-wheel distribution.
- Actively maintained with release on 2026-08-13.
License · maintenance · safety
LICENSE.txt (permissive) — Permissively licensed under 3-clause BSD, imposing no restrictions on commercial or proprietary use and requiring only attribution.
last release 2026-08-13 (1 days) · last repo commit 2026-08-13 · 924 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 467,378 downloads/mo, #6,498 on PyPI
Alternatives
Verify before relying
pip install scikit-rf
import scikit_rf
# Work with network data using numpy, scipy, pandas integration- Whether GUI applications (data-grabber, multiline-trl) are included in base install or require [plot,visa] extras.
- Specific capabilities for network parameter transformations, Touchstone file formats supported, and circuit analysis workflows.
- Performance characteristics when working with large datasets or high-frequency simulations.
What it is and what it does
scikit-rf is a production-grade library for RF and microwave engineering built on Python's scientific stack. It provides an object-oriented interface for working with network parameters and Touchstone files. The library integrates with numpy, scipy, and pandas for numerical computation and data handling, and includes optional GUI applications for specialized workflows.
The package targets engineers and researchers in RF and microwave domains who need programmatic access to circuit analysis. The codebase has been actively maintained since its first release in 2012 and supports current Python versions through 3.14, with a recent release on 2026-08-13.
Use it for
- Load and analyze network parameter measurements from Touchstone files in automated workflows.
- Integrate RF measurements into Python-based data pipelines using numpy, scipy, and pandas.
- Perform circuit analysis and transformations for RF and microwave engineering design.
- Work with network parameters in research and practical engineering applications.
- Access RF/microwave tools without proprietary software dependencies.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes.
scikit-rf is a mature, actively maintained library with no known vulnerabilities, low install friction, and permissive 3-clause BSD licensing. It fills a clear niche in RF and microwave engineering where open-source alternatives are limited. Install it if you work with network parameters or Touchstone files in Python.
Install
scikit-rf on PyPI
Before you install
Low friction install with a pure-wheel distribution. Actively maintained with release on 2026-08-13. Depends on well-established scientific stack (numpy, scipy, pandas, typing-extensions).
Requires Python 3.10 or later.
License in practice
Permissively licensed under 3-clause BSD, imposing no restrictions on commercial or proprietary use and requiring only attribution.
Quickstart
pip install scikit-rf
import scikit_rf
# Work with network data using numpy, scipy, pandas integration
Verify before relying
- Whether GUI applications (data-grabber, multiline-trl) are included in base install or require [plot,visa] extras.
- Specific capabilities for network parameter transformations, Touchstone file formats supported, and circuit analysis workflows.
- Performance characteristics when working with large datasets or high-frequency simulations.
Package facts
| License | LICENSE.txt permissive |
| Python support | Supports the current Python release >=3.10 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 4 packagesnumpyscipypandastyping-extensions |
| Maintenance | Actively maintained 1 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 467,378 / month, #6,498 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Development Status :: 5 - Production/StableIntended Audience :: EducationIntended Audience :: Science/ResearchLicense :: OSI Approved :: BSD LicenseOperating System :: OS IndependentProgramming Language :: PythonProgramming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Topic :: Communications :: Ham RadioTopic :: Scientific/Engineering |
Evidence: scikit_rf-2.1.0-py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “RF microwave engineering python”
- scikit-rfscikit-rf is an object-oriented Python library for RF and microwave…
- tidy3dTidy3D is a Python API for defining, submitting, and postprocessing…
- pylibiioPython bindings for libiio, a library for interfacing with Linux…
Give your agent the search over MCP, or paste the wish link into any chat.
More Scientific/Engineering packages
NumPy provides an N-dimensional array object and a comprehensive suite of mathematical, linear algebra, Fourier transform, and random number functions for scientific computing in Python.
pandas provides fast, flexible data structures (Series and DataFrame) for loading, cleaning, transforming, and analyzing labeled or relational data in Python.
scipy provides numerical algorithms for mathematics, science, and engineering—including optimization, integration, linear algebra, Fourier transforms, signal and image processing, and ODE solvers—built on numpy arrays.
scikit-learn provides a comprehensive Python library for supervised and unsupervised machine learning, including classification, regression, clustering, dimensionality reduction, and model evaluation tools built on NumPy and SciPy.
Install it if you need to train, evaluate, or deploy supervised or unsupervised learning models.
dill extends Python's pickle module to serialize and deserialize a much wider range of Python objects, including functions, lambdas, classes, and interpreter sessions, to byte streams for storage or network transmission.
Multiprocess is an enhanced fork of Python's standard multiprocessing library that uses dill for better serialization, allowing you to spawn processes with a threading-like API and share complex objects between them.
Install it if you use multiprocessing and encounter pickle serialization limits with lambdas or complex objects.
See also rf-protocols · sax · SigMF · radios · pyRFXtrx · matrix-client · meshtastic · PySpice · zigpy