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 behaviour 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
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")
It also provides some tools to validate and manipulate TfsDataFrames
and their headers; or lazily manage a collection of TFS files.
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.1.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2ac60905e2a5182eccc982a38ae988cd91593bd58c929adedae0764071fad5a1 |
|
MD5 | 849e717d0f9baa5c1c5341124b81e2e7 |
|
BLAKE2b-256 | 8ef4aa3fe961e662373e4802d0e8afab074b552c2428e016590d60a26828b78f |