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.17.tar.gz (30.2 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.17-py3-none-any.whl (46.0 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: tabpro-0.5.17.tar.gz
  • Upload date:
  • Size: 30.2 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.17.tar.gz
Algorithm Hash digest
SHA256 7a642b25c7597f93b1a89c979d1689c7cd2311f1ba59b00d72656697d1961984
MD5 e5df5d3d9307e1f438861489e02daf4b
BLAKE2b-256 b165455148a307dde266c6f72c884c111e2a681cf754da6478fe6c1b2bc3750c

See more details on using hashes here.

File details

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

File metadata

  • Download URL: tabpro-0.5.17-py3-none-any.whl
  • Upload date:
  • Size: 46.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.17-py3-none-any.whl
Algorithm Hash digest
SHA256 9f3bccf620e090a4d8f717bc469add743e3e558054ae829f33a926cd37543d5d
MD5 a3cb59cffdc4ed18c01bc626bacd3335
BLAKE2b-256 eba50d47d5915becd07933de25653891d6931caaa1d370538dbc6efcc603b6d7

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