Read and write tfs files.
Project description
TFS-Pandas
This package provides reading and writing functionality for Table Format System (TFS) files.
Files are read into a TfsDataFrame
, a class built on top of the famous pandas.DataFrame
, which in addition to the normal behavior attaches an OrderedDict
of headers to the DataFrame
.
See the API documentation for details.
Installing
Installation is easily done via pip
:
python -m pip install tfs-pandas
One can also install in a conda
/mamba
environment via the conda-forge
channel with:
conda install -c conda-forge tfs-pandas
Example Usage
The package is imported as tfs
, and exports top-level functions for reading and writing:
import tfs
# Loading a TFS file is simple
data_frame = tfs.read("path_to_input.tfs", index="index_column")
# You can access and modify the headers with the .headers attribute
useful_variable = data_frame.headers["SOME_KEY"]
data_frame.headers["NEW_KEY"] = some_variable
# Manipulate data as you do with pandas DataFrames
data_frame["NEWCOL"] = data_frame.COL_A * data_frame.COL_B
# You can check the validity of a TfsDataFrame, and choose the behavior in case of errors
tfs.frame.validate(data_frame, non_unique_behavior="raise") # or choose "warn"
# Writing out to disk is simple too
tfs.write("path_to_output.tfs", data_frame, save_index="index_column")
Reading and writing compressed files is also supported, and done automatically based on the provided file extension:
import tfs
# Reading a compressed file is simple, compression format is inferred
df = tfs.read("path_to_input.tfs.gz")
# When writing choose the compression format by providing the appropriate file extension
tfs.write("path_to_output.tfs.bz2", df)
tfs.write("path_to_output.tfs.zip", df)
Package Scope
The package also provides some tools to validate and manipulate TfsDataFrames
and their headers; or lazily manage a collection of TFS files.
For instance with tfs.read_hdf()
and tfs.write_hdf()
the TfsDataFames
can also be saved as hdf5
files, if the hdf5
extra requirements are fulfilled.
The package, however, is made to handle I/O of TFS
files to TfsDataFrames
only: it is not meant to implement various calculations on TfsDataFrames
.
Some calculations are implemented in other packages of the ecosystem.
License
This project is licensed under the MIT License
- see the LICENSE file for details.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for tfs_pandas-3.5.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a64de5839bb0ba6a51c9253af6cfa08d185f91a6a7923133e69ed4b6630bb175 |
|
MD5 | 8be9516914fe77e53f2057d48d5424f0 |
|
BLAKE2b-256 | 834d0aeb73f099f5ff3df503c925876620df4e606b341cc170820abc83c7ee1f |