{"id":3858,"library":"ydata-profiling","title":"YData Profiling (formerly pandas-profiling)","description":"YData Profiling, formerly known as pandas-profiling, is an open-source Python library that automates exploratory data analysis (EDA) by generating comprehensive, interactive reports from Pandas or Spark DataFrames with a single line of code. It provides detailed statistics, visualizations, and data quality warnings for various data types, including time-series and text. The project is actively maintained with frequent updates, with the latest stable version being 4.18.1.","status":"active","version":"4.18.1","language":"python","source_language":"en","source_url":"https://github.com/ydataai/ydata-profiling","tags":["data-profiling","eda","pandas","data-science","jupyter"],"install":[{"cmd":"pip install ydata-profiling","lang":"bash","label":"Install latest stable version"},{"cmd":"pip install ydata-profiling[notebook]","lang":"bash","label":"Install with Jupyter Notebook support"},{"cmd":"pip install pandas-profiling","lang":"bash","label":"Install deprecated pandas-profiling (will advise ydata-profiling)"}],"dependencies":[{"reason":"Core data structure for profiling.","package":"pandas","optional":false},{"reason":"Required for interactive reports in Jupyter notebooks.","package":"ipywidgets","optional":true},{"reason":"Required for profiling Spark DataFrames.","package":"pyspark","optional":true}],"imports":[{"wrong":"from pandas_profiling import ProfileReport","symbol":"ProfileReport","correct":"from ydata_profiling import ProfileReport"}],"quickstart":{"code":"import pandas as pd\nimport numpy as np\nfrom ydata_profiling import ProfileReport\n\n# Create a sample DataFrame\ndata = {\n    'col1': np.random.rand(100),\n    'col2': np.random.randint(0, 10, 100),\n    'col3': ['A', 'B', 'C'] * 30 + ['A'] * 10,\n    'col4': pd.to_datetime(pd.Series([], dtype='datetime64[ns]')) # Empty datetime for demonstration\n}\ndf = pd.DataFrame(data)\n\n# Generate the profiling report\nprofile = ProfileReport(df, title=\"My DataFrame Profiling Report\")\n\n# To display the report in a Jupyter Notebook (requires ipywidgets)\n# profile.to_notebook_iframe()\n\n# To save the report to an HTML file\nprofile.to_file(\"my_report.html\")\n\nprint(\"Report generated to my_report.html\")","lang":"python","description":"This quickstart demonstrates how to generate a basic profiling report for a Pandas DataFrame and save it as an HTML file. For interactive display in Jupyter environments, ensure `ipywidgets` is installed and use `profile.to_notebook_iframe()`."},"warnings":[{"fix":"Uninstall `pandas-profiling` and install `ydata-profiling`. Update import statements from `pandas_profiling` to `ydata_profiling`.","message":"The `pandas-profiling` package has been deprecated. Users should migrate to `ydata-profiling`. While `pandas-profiling` might still be installable, it is no longer maintained and points to the new library.","severity":"breaking","affected_versions":"<4.0.0 (for pandas-profiling)"},{"fix":"Consider sampling your data (`df.sample()`), filtering out extreme outliers before profiling, or utilizing the PySpark engine for big datasets (`pip install ydata-profiling[pyspark]`).","message":"Profiling very large datasets or datasets with extreme outliers can lead to `MemoryError` due to underlying `numpy` limitations in histogram generation.","severity":"gotcha","affected_versions":"All versions"},{"fix":"Ensure `ipywidgets` is installed (`pip install ydata-profiling[notebook]`) and properly enabled for your Jupyter Notebook or Lab environment. Consult `ipywidgets` documentation for complex configurations.","message":"Interactive reports in Jupyter environments might not display correctly (e.g., showing `IntSlider(value=0)`) if Jupyter Widgets are not properly enabled or configured.","severity":"gotcha","affected_versions":"All versions"},{"fix":"Ensure your Python environment is between 3.10 and 3.13. Upgrade Python if necessary.","message":"Python version compatibility has changed. While `pandas-profiling` supported older Python versions (e.g., >=3.7, <3.11), `ydata-profiling` now requires Python `>=3.10, <3.14`.","severity":"breaking","affected_versions":"Users upgrading from older `pandas-profiling` to `ydata-profiling` on Python <3.10 or >=3.14"}],"env_vars":null,"search_vec":"'4.18.1':77 'activ':66 'analysi':26 'autom':23 'code':43 'comprehens':30 'data':25,50,55,79,84 'data-profil':78 'data-sci':83 'datafram':37 'detail':46 'eda':27,81 'exploratori':24 'former':3,9 'frequent':69 'generat':29 'includ':57 'interact':31 'jupyt':86 'known':10 'latest':73 'librari':21 'line':41 'maintain':67 'open':18 'open-sourc':17 'panda':5,13,34,82 'pandas-profil':4,12 'profil':2,6,8,14,80 'project':64 'provid':45 'python':20 'qualiti':51 'report':32 'scienc':85 'seri':60 'singl':40 'sourc':19 'spark':36 'stabl':74 'statist':47 'text':62 'time':59 'time-seri':58 'type':56 'updat':70 'various':54 'version':75 'visual':48 'warn':52 'ydata':1,7","created_at":"2026-04-11T17:47:43.668615+00:00","updated_at":"2026-04-17T15:10:49.175169+00:00","problems":{"verify_error":"Traceback (most recent call last):\n  File \"<string>\", line 1, in <module>\n  File \"/tmp/tmp4uxxo9ba/venv/lib/python3.12/site-packages/ydata_profiling/__init__.py\", line 11, in <module>\n    from ydata_profiling.compare_reports import compare  # isort:skip # noqa\n    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^"},"ecosystem":"pypi","meta_description":null,"install_score":null,"quickstart_score":null,"quickstart_tag":null,"pypi_latest":"4.18.4","cli_name":"ydata-profiling","cli_version":"sh: 1: ydata-profiling: not found","type":"library","homepage":"https://ydata.ai","github":"https://github.com/ydataai/ydata-profiling","docs":null,"changelog":null,"pypi":"https://pypi.org/project/ydata-profiling/","npm":null,"openapi_spec":null,"status_page":null,"smithery":null,"categories":["data","observability"],"base_url":null,"auth_type":null,"provenance":{"verified_status":"passing","verified_at":"2026-07-03","last_verified":"2026-08-29","next_check":"2026-07-10","install_tag":null}}