Skip to main content

A table data processor

Project description

TabPro - Table Data Processor

TabPro is a Python-based tool for efficient processing of tabular data.

Features

Data Format Support

  • CSV
  • TSV
  • Excel
  • JSON
  • JSON Lines
  • Bidirectional conversion between all supported formats

Table Operations

  1. Table Conversion

    • Convert between different formats
    • Customize output format settings
    • Filter and transform data
  2. Table Merging

    • Merge tables based on common columns
    • Handle multiple table merging
    • Support for staging and version control
  3. Table Aggregation

    • Data aggregation based on grouping
    • Statistical calculations
    • Duplicate detection
  4. Table Sorting

    • Sort by multiple columns
    • Custom sort order
  5. Table Comparison

    • Detect differences between tables
    • Data consistency checking
    • Detailed comparison reports

Installation

Prerequisites

  • Python 3.10 or higher
  • pip (Python package installer)

Installation

pip install tabpro

CLI Usage

Basic Command

tabpro [command] [options]

Available Commands

Table Conversion (convert)

tabpro convert [options] <input_file1> [<input_file2>...] --output <output_file>
# or
tabpro-convert ...
convert-tables ...

Options:

  • --output-file-filtered-out, --output-filtered-out, -f: Path to the output file for filtered out rows
  • --config, -c: Path to the configuration file
  • --pick-columns, --pick: Pick specific columns
  • --do-actions, --actions, --do: Actions to perform on the data
  • --ignore-file-rows, --ignore-rows, --ignore: Ignore specific rows
  • --no-header: Treat CSV/TSV data as having no header row

Table Merging (merge)

tabpro merge [options] --previous <previous_file1> [<previous_file2> ...] --new <modification_file1> [<modification_file2> ...] --keys <key1> [<key2> ...]
# or 
tabpro-merge ...
merge-tables ...

Options:

  • --allow-duplicate-conventional-keys: Allow duplicate keys in previous files
  • --allow-duplicate-modification-keys: Allow duplicate keys in modification files
  • --output-base-data-file: Path to output base data file
  • --output-modified-data-file: Path to output modified data file
  • --output-remaining-data-file: Path to output remaining data file
  • --merge-fields: Fields to merge
  • --merge-staging: Merge staging fields from modification files
  • --use-staging: Use staging fields files

Table Aggregation (aggregate)

tabpro aggregate [options] <input_file> --output <aggregated_json_path>
# or
tabpro-aggregate ...
aggregate-tables ...

Options:

  • --keys-to-show-duplicates: Keys to show duplicates
  • --keys-to-show-all-count: Keys to show all count
  • --keys-to-expand: Keys to expand
  • --show-count-threshold, --count-threshold, -C: Show count threshold (default: 50)
  • --show-count-max-length, --count-max-length, -L: Show count max length (default: 100)

Table Sorting (sort)

tabpro sort [options] <input_file1> [<input_file2> ...] --sort-keys <key1> [<key2> ...] --output <output_file>
# or
tabpro-sort ...
sort-tables ...

Options:

  • --output-file, --output, -O: Path to output file
  • --reverse, -R: Reverse the sort order

Table Comparison (compare)

tabpro compare [options] <input_file1> <input_file2> --query <query_key1> [<query_key2> ...] --output <output_file>
# or
tabpro-compare ...
tabpro-diff ...
compare-tables ...

Options:

  • --compare-keys, --compare, -C: Keys for comparison

Common Options

  • --verbose, -v: Enable verbose logging
  • --version, -V: Show version information

Features

  • Simple and user-friendly command-line interface
  • Flexible data processing options
  • Handles large datasets efficiently
  • Extensible design

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

tabpro-0.5.12.tar.gz (29.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

tabpro-0.5.12-py3-none-any.whl (45.0 kB view details)

Uploaded Python 3

File details

Details for the file tabpro-0.5.12.tar.gz.

File metadata

  • Download URL: tabpro-0.5.12.tar.gz
  • Upload date:
  • Size: 29.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.2 CPython/3.12.3 Linux/6.8.0-45-generic

File hashes

Hashes for tabpro-0.5.12.tar.gz
Algorithm Hash digest
SHA256 f71ef5f3ac193a66cdff26d69435f48e4b2f20bd6569a645f9355c6d83f32653
MD5 7104393c8032b5730c9aedae9a241b10
BLAKE2b-256 7d2a4ff21f5b9b4ac31969364653335c09549b3937d8d88c34ddc69e6b978a2e

See more details on using hashes here.

File details

Details for the file tabpro-0.5.12-py3-none-any.whl.

File metadata

  • Download URL: tabpro-0.5.12-py3-none-any.whl
  • Upload date:
  • Size: 45.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.2 CPython/3.12.3 Linux/6.8.0-45-generic

File hashes

Hashes for tabpro-0.5.12-py3-none-any.whl
Algorithm Hash digest
SHA256 dcdb918969a3b6f1ec8e542faf093ebd8c158acaaaa353f1d4fab34b8aac503e
MD5 d4044e6805da9dbd0d7d51f8c91c356d
BLAKE2b-256 ec35cfff855caf5ccc34b0bce6cc3bfd5c47114a617bdda80277605976505a32

See more details on using hashes here.

Supported by

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