Skip to main content

Suite of pandas utilities including a DataFrame comparison report builder.

Project description

pandascompare

Package version License

pandascompare is a Python package designed to compare DataFrame objects, enabling you to quickly identify the differences between two datasets.

Installation

pip install pandascompare

Main Features

The PandasCompare class compares any two DataFrame objects along the following dimensions:

  • Rows ➔ discrepancies with respect to the join key(s) specified via the join_on argument.
  • Columns ➔ name differences or missing columns.
  • Values ➔ data that differs in terms of value or type.

Example Usage

Please refer to the documentation within the code for more information.

Imports

from pandascompare import PandasCompare

Create DataFrames

First, let's create two sample DataFrame objects to compare.

import pandas as pd
import numpy as np

# February Data
left_df = pd.DataFrame({
    'id': [1, 2, 3],
    'date': [pd.to_datetime('2024-02-29')] * 3,
    'first_name': ['Alice', 'Mike', 'John'],
    'amount': [10.5, 5.3, 33.77],
    })

# January Data
right_df = pd.DataFrame({
    'id': [1, 2, 9],
    'date': [pd.to_datetime('2024-01-31')] * 3,
    'first_name': ['Alice', 'Michael', 'Zachary'],
    'last_name': ['Jones', 'Smith', 'Einck'],
    'amount': [11.1, np.nan, 14],
    })

Compare DataFrames

Next, we will initialize a PandasCompare instance to perform the comparison. Please consult the in-code documentation for a comprehensive list of available arguments.

pc = PandasCompare(
    left=left_df,
    right=right_df,
    left_label='feb',
    right_label='jan',
    join_on='id',
    left_ref=['first_name'],
    include_delta=True,
    verbose=True,
    )

Export to Excel

Finally, let's export the compare report to an Excel file to view the results.

pc.to_excel()

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

pandascompare-0.2.1.tar.gz (10.5 kB view details)

Uploaded Source

Built Distribution

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

pandascompare-0.2.1-py3-none-any.whl (11.8 kB view details)

Uploaded Python 3

File details

Details for the file pandascompare-0.2.1.tar.gz.

File metadata

  • Download URL: pandascompare-0.2.1.tar.gz
  • Upload date:
  • Size: 10.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.11.6 Windows/10

File hashes

Hashes for pandascompare-0.2.1.tar.gz
Algorithm Hash digest
SHA256 1a18688dc2275103cf32b2404d3c29ba022fea6e450cab935cd1a3a94cb3e561
MD5 c2921dee7ceb0bca673c68a47e590eba
BLAKE2b-256 86516f77b9893d2a611e5b4c4c28b9ad2be22235cb0695cfd9c702fc44432fcc

See more details on using hashes here.

File details

Details for the file pandascompare-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: pandascompare-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 11.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.11.6 Windows/10

File hashes

Hashes for pandascompare-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 ad8f7f0cae3cb18d3aebb883fe41f02072efd809f6d1924a5e3f3eded1b68a96
MD5 e4f47530edae082bf74ee442bb87e47a
BLAKE2b-256 7eed2a7833d45e4f4efa33191e5f49819743f3388b696bfc7be3569fa81c83e6

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