# pandas-profiling **Repository Path**: mirrors_lepy/pandas-profiling ## Basic Information - **Project Name**: pandas-profiling - **Description**: Create HTML profiling reports from pandas DataFrame objects - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2020-09-25 - **Last Updated**: 2025-07-02 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Pandas Profiling  [](https://github.com/ydataai/pandas-profiling/actions/workflows/tests.yml) [](https://codecov.io/gh/ydataai/pandas-profiling) [](https://github.com/ydataai/pandas-profiling/releases) [](https://pypi.org/project/pandas-profiling/) [](https://github.com/python/black)
Documentation | Slack | Stack Overflow | Latest changelog
Generates profile reports from a pandas `DataFrame`. The pandas `df.describe()` function is great but a little basic for serious exploratory data analysis. `pandas_profiling` extends the pandas DataFrame with `df.profile_report()` for quick data analysis. For each column the following statistics - if relevant for the column type - are presented in an interactive HTML report: * **Type inference**: detect the [types](#types) of columns in a dataframe. * **Essentials**: type, unique values, missing values * **Quantile statistics** like minimum value, Q1, median, Q3, maximum, range, interquartile range * **Descriptive statistics** like mean, mode, standard deviation, sum, median absolute deviation, coefficient of variation, kurtosis, skewness * **Most frequent values** * **Histogram** * **Correlations** highlighting of highly correlated variables, Spearman, Pearson and Kendall matrices * **Missing values** matrix, count, heatmap and dendrogram of missing values * **Text analysis** learn about categories (Uppercase, Space), scripts (Latin, Cyrillic) and blocks (ASCII) of text data. * **File and Image analysis** extract file sizes, creation dates and dimensions and scan for truncated images or those containing EXIF information. ## Announcements **Spark backend in progress**: We can happily announce that we're nearing v1 for the Spark backend for generating profile reports. Beta testers wanted! The Spark backend will be released as a pre-release for this package. **Monitoring time series?**: I'd like to draw your attention to [popmon](https://github.com/ing-bank/popmon). Whereas pandas-profiling allows you to explore patterns in a single dataset, popmon allows you to uncover temporal patterns. It's worth checking out! --- _Contents:_ **[Examples](#examples)** | **[Installation](#installation)** | **[Documentation](#documentation)** | **[Large datasets](#large-datasets)** | **[Command line usage](#command-line-usage)** | **[Advanced usage](#advanced-usage)** | **[Support](#support)** | **[Go beyond](#go-beyond)** | **[Support the project](#supporting-open-source)** | **[Types](#types)** | **[How to contribute](#contributing)** | **[Editor Integration](#editor-integration)** | **[Dependencies](#dependencies)** --- ## Examples The following examples can give you an impression of what the package can do: * [Census Income](https://pandas-profiling.ydata.ai/examples/master/census/census_report.html) (US Adult Census data relating income) * [NASA Meteorites](https://pandas-profiling.ydata.ai/examples/master/meteorites/meteorites_report.html) (comprehensive set of meteorite landings) [](https://colab.research.google.com/github/pandas-profiling/pandas-profiling/blob/master/examples/meteorites/meteorites.ipynb) [](https://mybinder.org/v2/gh/pandas-profiling/pandas-profiling/master?filepath=examples%2Fmeteorites%2Fmeteorites.ipynb) * [Titanic](https://pandas-profiling.ydata.ai/examples/master/titanic/titanic_report.html) (the "Wonderwall" of datasets) [](https://colab.research.google.com/github/pandas-profiling/pandas-profiling/blob/master/examples/titanic/titanic.ipynb) [](https://mybinder.org/v2/gh/pandas-profiling/pandas-profiling/master?filepath=examples%2Ftitanic%2Ftitanic.ipynb) * [NZA](https://pandas-profiling.ydata.ai/examples/master/nza/nza_report.html) (open data from the Dutch Healthcare Authority) * [Stata Auto](https://pandas-profiling.ydata.ai/examples/master/stata_auto/stata_auto_report.html) (1978 Automobile data) * [Vektis](https://pandas-profiling.ydata.ai/examples/master/vektis/vektis_report.html) (Vektis Dutch Healthcare data) * [Colors](https://pandas-profiling.ydata.ai/examples/master/colors/colors_report.html) (a simple colors dataset) * [UCI Bank Dataset](https://pandas-profiling.ydata.ai/examples/master/bank_marketing_data/uci_bank_marketing_report.html) (banking marketing dataset) * [RDW](https://pandas-profiling.ydata.ai/examples/master/rdw/rdw.html) (RDW, the Dutch DMV's vehicle registration 10 million rows, 71 features) Specific features: * [Russian Vocabulary](https://pandas-profiling.ydata.ai/examples/master/features/russian_vocabulary.html) (demonstrates text analysis) * [Cats and Dogs](https://pandas-profiling.ydata.ai/examples/master/features/cats-and-dogs.html) (demonstrates image analysis from the file system) * [Celebrity Faces](https://pandas-profiling.ydata.ai/examples/master/features/celebrity-faces.html) (demonstrates image analysis with EXIF information) * [Website Inaccessibility](https://pandas-profiling.ydata.ai/examples/master/features/website_inaccessibility_report.html) (demonstrates URL analysis) * [Orange prices](https://pandas-profiling.ydata.ai/examples/master/features/united_report.html) and [Coal prices](https://pandas-profiling.ydata.ai/examples/master/features/flatly_report.html) (showcases report themes) Tutorials: * [Tutorial: report structure using Kaggle data (advanced)](https://pandas-profiling.ydata.ai/examples/master/tutorials/modify_report_structure.ipynb) (modify the report's structure) [](https://colab.research.google.com/github/pandas-profiling/pandas-profiling/blob/master/examples/tutorials/modify_report_structure.ipynb) [](https://mybinder.org/v2/gh/pandas-profiling/pandas-profiling/master?filepath=examples%2Ftutorials%2Fmodify_report_structure.ipynb) ## Installation ### Using pip [](https://pepy.tech/project/pandas-profiling) [](https://pepy.tech/project/pandas-profiling/month) [](https://pypi.org/project/pandas-profiling/) You can install using the pip package manager by running ```sh pip install pandas-profiling[notebook] ``` Alternatively, you could install the latest version directly from Github: ```sh pip install https://github.com/ydataai/pandas-profiling/archive/master.zip ``` ### Using conda [](https://anaconda.org/conda-forge/pandas-profiling) [](https://anaconda.org/conda-forge/pandas-profiling) You can install using the conda package manager by running ```sh conda install -c conda-forge pandas-profiling ``` ### From source Download the source code by cloning the repository or by pressing ['Download ZIP'](https://github.com/ydataai/pandas-profiling/archive/master.zip) on this page. Install by navigating to the proper directory and running: ```sh python setup.py install ``` ## Documentation The documentation for `pandas_profiling` can be found [here](https://pandas-profiling.ydata.ai/docs/master/rtd/). Previous documentation is still available [here](https://pandas-profiling.ydata.ai/docs/master/). ### Getting started Start by loading in your pandas DataFrame, e.g. by using: ```python import numpy as np import pandas as pd from pandas_profiling import ProfileReport df = pd.DataFrame(np.random.rand(100, 5), columns=["a", "b", "c", "d", "e"]) ``` To generate the report, run: ```python profile = ProfileReport(df, title="Pandas Profiling Report") ``` ### Explore deeper You can configure the profile report in any way you like. The example code below loads the explorative configuration, that includes many features for text (length distribution, unicode information), files (file size, creation time) and images (dimensions, exif information). If you are interested what exact settings were used, you can compare with the [default configuration file](https://github.com/ydataai/pandas-profiling/blob/master/src/pandas_profiling/config_default.yaml). ```python profile = ProfileReport(df, title="Pandas Profiling Report", explorative=True) ``` Learn more about configuring `pandas-profiling` on the [Advanced usage](https://pandas-profiling.ydata.ai/docs/master/rtd/pages/advanced_usage.html) page. #### Jupyter Notebook We recommend generating reports interactively by using the Jupyter notebook. There are two interfaces (see animations below): through widgets and through a HTML report.