Fast conversion of data files
convertr is an R package that provides a simple interface to high-performance command-line tools for converting data files between CSV, EDF, Feather, and Parquet formats.
Supported conversions:
- CSV → EDF
- CSV → Feather
- CSV → Parquet
- EDF → CSV
- EDF → Feather
- EDF → Parquet
Installation
You can install the development version of convertr like so:
install.packages("remotes")
remotes::install_url(
"https://github.com/NIATS-UFU/convertr/releases/download/v0.1.0/convertr_0.1.0.tar.gz"
)Quickstart
To convert files into different formats, you will first need to install the command-line tool:
CSV conversions
CSV → EDF
csv2edf(
input = "./data/signal.csv",
output = "./data/signal.edf"
)Adding EDF header information:
csv2edf(
input = "./data/signal.csv",
output = "./data/signal.edf",
patient = "Tony Stark",
recording = "EMG"
)CSV → Feather
csv2feather(
input = "./data/signal.csv",
output = "./data/signal.feather"
)Using other compression method:
csv2feather(
input = "./data/signal.csv",
output = "./data/signal.feather",
compression = "zstd",
compression_level = 5
)CSV → Parquet
csv2parquet(
input = "./data/signal.csv",
output = "./data/signal.parquet",
compression = "snappy"
)Available compression:
EDF conversions
EDF → Parquet
edf2parquet(
input = "./data/signal.edf",
output = "./data/signal.parquet",
compression = "zstd"
)Folder conversion
Convert all EDF files inside a folder:
edf_folder_convert(
folder = "./data/edf_files",
output_format = "parquet"
)Supported output formats:
Alignment options
EDF conversion supports:
highest-rate
unionExample:
edf2csv(
"signal.edf",
"signal.csv",
align = "union"
)