Skip to main content

Read and write tfs files.

Project description

TFS-Pandas

Cron Testing Code Climate coverage Code Climate maintainability (percentage)

PyPI Version GitHub release Conda-forge Version DOI

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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tfs-pandas-3.5.0.tar.gz (30.4 kB view details)

Uploaded Source

Built Distribution

tfs_pandas-3.5.0-py3-none-any.whl (24.4 kB view details)

Uploaded Python 3

File details

Details for the file tfs-pandas-3.5.0.tar.gz.

File metadata

  • Download URL: tfs-pandas-3.5.0.tar.gz
  • Upload date:
  • Size: 30.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.7.15

File hashes

Hashes for tfs-pandas-3.5.0.tar.gz
Algorithm Hash digest
SHA256 6929d1d229f6d32bf73aa215d663a1888e5f8e04dba55004557587d7544640d1
MD5 aed16698da0c96cb030cb028f4e48928
BLAKE2b-256 2dc985daa688196865d5ee8cacf969a9ea84dfbc5e6fc481d2a3204b6b3373ce

See more details on using hashes here.

File details

Details for the file tfs_pandas-3.5.0-py3-none-any.whl.

File metadata

  • Download URL: tfs_pandas-3.5.0-py3-none-any.whl
  • Upload date:
  • Size: 24.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.7.15

File hashes

Hashes for tfs_pandas-3.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 a64de5839bb0ba6a51c9253af6cfa08d185f91a6a7923133e69ed4b6630bb175
MD5 8be9516914fe77e53f2057d48d5424f0
BLAKE2b-256 834d0aeb73f099f5ff3df503c925876620df4e606b341cc170820abc83c7ee1f

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page