Welcome to flysight2csv documentation!#
Installation & Usage
flysight2csv#
Documentation: https://flysight2csv.readthedocs.io
Source Code: https://github.com/yoleg/flysight2csv
Utilities for finding and reformatting FlySight 2 CSV files (SENSOR.CSV and TRACK.CSV).
💡 This is an early release. Please let me know how you use this tool and what features you would like to see.
Features#
Functionality:
Find all the FlySight 2 CSV files in one or more directories or possible file paths.
View metadata (vars, sensors, columns, units, and first row) for each CSV file.
Copy matching files to a single directory, prepending the parent directory names to the filename.
Reformat the CSV files for easier use with other tools, such as Pandas dataframes.
Calculates ISO timestamps for non-GPS sensors from $TIME field values, if available.
Available formats:
Flat CSV (single header row)
JSON lines (one JSON object per line)
Available filters:
Select only the columns you need.
Select only the sensors you need.
Merge the reformatted files from each directory into an additional MERGED.csv (or .jsonl) file, sorted by timestamp.
Compatibility:
Works with Python 3.10+
Tested on Windows, Mac, and Linux
May be used as a Python library or command-line tool
Possible future features#
Let me know if you would like to see any of these added.
Filter the CSV files by date/time, altitude, or other criteria.
Show a summary of date ranges and altitudes for the discovered CSV files.
Add units to the flattened CSV files.
FlySight 1 output format.
Trim the CSV files to just the descent or ascent portion of a flight.
Installers for Windows, Mac, and Linux.
Simple graphical user interface (GUI) for selecting options and running the command.
Installation#
The package is published on PyPI and can be installed with pip (or any
equivalent):
pip install flysight2csv
For complete installation instructions, see the documentation.
Usage#
Please note that this is an early release, and the API may change in future versions.
Preview the files to be processed:
flysight2csv source/files/or/directories/
flysight2csv source/files/or/directories/ --info=metadata
Copy just the TRACK.CSV files (unchanged) to a single directory, prepending the date and time to the filename:
flysight2csv source/files/or/directories/ -o output/path/ '--glob=**/TRACK.CSV'
Reformat all the FlySight 2 CSVs into a “flat” CSV (single header) for use with other tools:
flysight2csv source/files/or/directories/ -o output/path/ -f csv-flat
For more options, see the help:
flysight2csv --help
Troubleshooting#
See the troubleshooting section of the documentation.
Contributors ✨#
Contributions of any kind welcome! Please see the contributing guide.
Credits#
This package was created with Copier and the browniebroke/pypackage-template project template.