Skip to main content

A lightweight package for detailed Exploratory Data Analysis on pandas DataFrames.

Project description

EDA Profiler

A lightweight yet comprehensive Python package for performing Exploratory Data Analysis (EDA) on a pandas DataFrame.

eda_profiler quickly generates a detailed profile report for each column in your dataset, providing essential statistics for data cleaning, feature engineering, and initial data understanding.

Features

  • Calculates counts and percentages of missing values.
  • Differentiates between numerical and categorical columns to provide relevant stats.
  • For numerical columns, it computes:
    • Standard descriptive stats (mean, std, min, max).
    • A full range of percentiles (1%, 5%, 10%, 25%, 50%, 75%, 90%, 95%, 99%).
    • Distribution shape metrics: Skewness and Kurtosis.
    • Dispersion metrics: IQR and Coefficient of Variation.
    • Count of zero values.
  • For categorical columns, it computes:
    • Cardinality (unique value count).
    • Mode (most frequent value), its frequency, and percentage.

How to Use

The package provides a single, easy-to-use function: profile_df.

import pandas as pd
import numpy as np
from eda_profiler import profile_df

# 1. Create a sample DataFrame
data = {
    'numeric_col': np.random.randn(100) * 100,
    'categorical_col': np.random.choice(['A', 'B', 'C'], 100, p=[0.6, 0.3, 0.1]),
    'mixed_col_with_nan': [1, 2, np.nan, 4, 5, 1, 2, np.nan] * 12 + [1,2,np.nan, 4]
}
df = pd.DataFrame(data)

# 2. Generate the EDA profile
eda_summary = profile_df(df)

# 3. Print the summary
# Transposing (.T) is often useful for readability
print(eda_summary.T)

Contributing

Contributions are welcome! Please feel free to submit a pull request or open an issue.

License

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

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

eda_profiler-0.1.1.tar.gz (4.7 kB view details)

Uploaded Source

Built Distribution

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

eda_profiler-0.1.1-py3-none-any.whl (5.2 kB view details)

Uploaded Python 3

File details

Details for the file eda_profiler-0.1.1.tar.gz.

File metadata

  • Download URL: eda_profiler-0.1.1.tar.gz
  • Upload date:
  • Size: 4.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.11

File hashes

Hashes for eda_profiler-0.1.1.tar.gz
Algorithm Hash digest
SHA256 4298e7c5866ad4cecc41a2a6eb8fb9a8a6b5344ad054d397340a6a13d10c2246
MD5 db813c8dd3d47910b70e656b5c2fc25c
BLAKE2b-256 64e09ac23fc17a29d9bd4c0d9feeb10b5dff1d630a69a0a40cfdbc7f88ad0d62

See more details on using hashes here.

File details

Details for the file eda_profiler-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: eda_profiler-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 5.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.11

File hashes

Hashes for eda_profiler-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 ce5d78c787ba5b2fbee65aba86961ae5ea79885ff2adf15d8762d24c3772ff2d
MD5 dcf0661691ebe06ac06e0ea010aa9d79
BLAKE2b-256 8fedc9cebe097cfc6b0d4b709df0bc621e0b9bf7ebeb3bf5b6d120844e539576

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