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.14.tar.gz (29.7 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.14-py3-none-any.whl (45.4 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: tabpro-0.5.14.tar.gz
  • Upload date:
  • Size: 29.7 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.14.tar.gz
Algorithm Hash digest
SHA256 3f5ff637708960cf0dadfae374be21ec1a782f9233ede4ec9ad972321324eda4
MD5 1bac224657ba01ce6922ba736f2aba6c
BLAKE2b-256 6cd4ac60e34fa56c29ef7f771af1d571e5289d700141d8e5552e49dc6d37026a

See more details on using hashes here.

File details

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

File metadata

  • Download URL: tabpro-0.5.14-py3-none-any.whl
  • Upload date:
  • Size: 45.4 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.14-py3-none-any.whl
Algorithm Hash digest
SHA256 20f083a93ab943895e64e519ef243b7d15ce7ff0335fa6d091683915625dc69e
MD5 57568d8a2982c6cebf43fcd3bb93ea8d
BLAKE2b-256 a910fc2a9e6c77a50bde113fd9a5cf1f56e16bcd253ba30f2d8d83df227119c5

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