Skip to main content

A tool for reading and transforming PDZ 24 and PDZ 25 formats

Project description

PDZ-Tool

PDZ-Tool is a Python library for reading PDZ files and converting them into CSV or JSON formats. PDZ files are commonly used to store data from X-ray fluorescence (XRF) instruments, and this tool allows easy extraction and transformation of the data for analysis.

Features

  • Read PDZ files in version 24 and 25 formats.
  • Parse and extract important information from the PDZ file into JSON format.
  • Convert the parsed data to CSV format for further analysis.
  • Verbose and debug modes to help troubleshoot issues during parsing.

Installation

You can install pdz-tool via pip.

pip install pdz-tool

Usage

#### 1. Importing and Initializing PDZTool
from pdz_tool import PDZTool

# Initialize a PDZTool object
pdz_tool = PDZTool('path/to/pdz_file.pdz')

#### 2. Parsing a PDZ File
parsed_data = pdz_tool.parse()

#### 3. Accessing Parsed Data as a Dictionary
record_names = pdz_tool.record_names  # Record names found on the pdz file
for record_name in record_names:
    print(f"Record Name: {record_name}")
    print(parsed_data[record_name])
    
#### 4. Converting Parsed Data to JSON
json_data = pdz_tool.to_json()
print(json_data)

#### 5. Saving Parsed Data to JSON File
pdz_tool.to_json('output.json')

#### 6. Saving Parsed Data to CSV
pdz_tool.to_csv('output.csv')

CLI Usage:

pdz-tool path/to/pdz_file.pdz

see pdz-tool --help for more options.

Demo

Demo folder is included in the project, containing example PDZ files to help you get started. You can run the demo script to test the functionality of the PDZ-Tool:

python demo/demo_script.py

Development

Cloning the Repository

If you wish to modify or extend the tool, clone the repository:

git clone git@github.com:bducraux/pdz-tool.git
cd pdz-tool

Dependencies

Installing Poetry

This project uses Poetry for dependency management. If you don't have Poetry installed, you can install it by running:

pip install poetry

Installing Dependencies

To install the dependencies, run:

poetry install

Contributing

Contributions are welcome! If you find any bugs or have suggestions for new features, feel free to open an issue or submit a pull request.

License

This project is licensed under the MIT License. See the LICENSE file for details.

Contact

For any inquiries or support, please reach out at bruno.drx@gmail.com.

Thank you for using PDZ-Tool! 😊

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

pdz_tool-0.2.0.tar.gz (12.5 kB view details)

Uploaded Source

Built Distribution

pdz_tool-0.2.0-py3-none-any.whl (14.6 kB view details)

Uploaded Python 3

File details

Details for the file pdz_tool-0.2.0.tar.gz.

File metadata

  • Download URL: pdz_tool-0.2.0.tar.gz
  • Upload date:
  • Size: 12.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.2 CPython/3.11.1 Linux/6.5.0-28-generic

File hashes

Hashes for pdz_tool-0.2.0.tar.gz
Algorithm Hash digest
SHA256 cfb27784c1b96c03648248b04eb453ed56a3ffcbb2b8e9c9ae49a82ffc477605
MD5 9865f81258ee142f3be31b43711bcd9b
BLAKE2b-256 c4c4ed4d545d5f0929b4fdeb4f6a3917516c32b74be2dc243302b457712e9cd6

See more details on using hashes here.

File details

Details for the file pdz_tool-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: pdz_tool-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 14.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.2 CPython/3.11.1 Linux/6.5.0-28-generic

File hashes

Hashes for pdz_tool-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 73f478a9fe6b6344650b0ebe1cb8f8509d77e95503453c3a8087d8adc6217236
MD5 d9d94ce3c27a6c81bea9e683e90bbdfc
BLAKE2b-256 57a70f8c4a1d10778eb45c08a538874e62e92bdea5ac255d01c35524e58880bd

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