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 pandas.DataFrame, which in addition to the normal behavior attaches a dictionary 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, speficying the
# compatibility mode as well as the behavior in case of errors
tfs.frame.validate(
data_frame,
non_unique_behavior="raise", # or choose "warn"
compatibility="mad-x", # or choose "mad-ng"
)
# Writing out to disk is simple too
tfs.write("path_to_output.tfs", data_frame, save_index="index_column")
Compression is automatically supported, based on the provided file extension (for supported formats):
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)
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
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file tfs_pandas-4.0.2.tar.gz.
File metadata
- Download URL: tfs_pandas-4.0.2.tar.gz
- Upload date:
- Size: 34.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.27 {"installer":{"name":"uv","version":"0.9.27","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2eda7f5bb467539fe4c27d17c242194e28d2e9c74ba1e2fa623017c04f29d493
|
|
| MD5 |
cc38869ad8f5dbc7d53866f3a6e7182c
|
|
| BLAKE2b-256 |
2689ccb5bfcd6567be5251d1dd27bd241bf8d8559b85832e5d42096b8b9d6278
|
File details
Details for the file tfs_pandas-4.0.2-py3-none-any.whl.
File metadata
- Download URL: tfs_pandas-4.0.2-py3-none-any.whl
- Upload date:
- Size: 32.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.27 {"installer":{"name":"uv","version":"0.9.27","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4c8097a870806964b921ba4a77d434f8cd189697f45d2eeb6bbdbaadd93d2f49
|
|
| MD5 |
047c7c60d6c6807ce3e0820b6f282f76
|
|
| BLAKE2b-256 |
302821eadf6d141faa2df88088669a06b2ceae9936afe5e8c359abc8a3de62e3
|