adiftools release v0.1.7
Functions
- Read adif file into Pandas DataFrame.
- Generate basic Matplotlib plots from adif data.
- Utility tool to calculate Grid Locator from/to geographic coordinate.
Performance Improvements
- Major performance optimization in
ADIFParser.read_adi()method- Issue: The original implementation used inefficient DataFrame merging operations that caused O(n²) complexity, making it extremely slow for large ADIF files with many records.
- Solution: Replaced the inefficient approach with a list accumulation method that builds the DataFrame once at the end.
- Performance gain:
- Time complexity improved from O(n²) to O(n)
- Expected 10-50x speed improvement for files with 10,000+ records
- Reduced memory usage by eliminating intermediate DataFrame duplications
- Technical details:
- Removed
pd.merge()operations in the processing loop - Implemented list-based record accumulation
- Single DataFrame construction at the end of processing
- Pre-compiled regex pattern for faster parsing
- Removed
Install
adiftools can now officially pip install from PyPI. If you have already installed a previous version, please update it with the following command All previous functions can still be used with this update.
pip install adiftoolspip install -U adiftools- When you got an error from subprocess, try to install
wheelbypip install wheelcommand
Other
- Please report any issues with the release on the adiftools issue tracker.
- 日本語での説明はJS2IIUのブログをご覧ください:アマチュア無線局JS2IIU
Thank you, JS2IIU