Skip to content

Commit 123e443

Browse files
authored
Commit for pandas-profiling v2.5.0 (ydataai#380)
- Progress bar added (ydataai#224) - Character analysis for Text/NLP (ydataai#278) - Themes: configuration and demo's (Orange, Dark) - Tutorial on modifying the report's structure (ydataai#362; ydataai#281, ydataai#259, ydataai#253, ydataai#234). This jupyter notebook also demonstrates how to use the Kaggle api together with pandas-profiling. - Toggle descriptions at correlations. Deprecation: - This is the last version to support Python 3.5. Stability: - The order of columns changed when sort="None" (ydataai#377, fixed). - Pandas v1.0.X is not yet supported (ydataai#367, ydataai#366, ydataai#363, ydataai#353, pinned pandas to < 1) - Improved mixed type detection (ydataai#351) - Refactor of report structures. - Correlations are more stable (e.g. Phi_k color scale now from 0-1, rows and columns with NaN values are dropped, ydataai#329). - Distinct counts exclude NaNs. - Fixed alerts in notebooks. Other improvements: - Warnings are now sorted. - Links to Binder and Google Colab are added for notebooks (ydataai#349) - The overview section is tabbed. * Commit for pandas-profiling v2.5.0 - Progress bar added (ydataai#224) - Character analysis for Text/NLP (ydataai#278) - Themes: configuration and demo's (Orange, Dark) - Tutorial on modifying the report's structure (ydataai#362; ydataai#281, ydataai#259, ydataai#253, ydataai#234). This jupyter notebook also demonstrates how to use the Kaggle api together with pandas-profiling. - Toggle descriptions at correlations. Deprecation: - This is the last version to support Python 3.5. Stability: - The order of columns changed when sort="None" (ydataai#377, fixed). - Pandas v1.0.X is not yet supported (ydataai#367, ydataai#366, ydataai#363, ydataai#353, pinned pandas to < 1) - Improved mixed type detection (ydataai#351) - Refactor of report structures. - Correlations are more stable (e.g. Phi_k color scale now from 0-1, rows and columns with NaN values are dropped, ydataai#329). - Distinct counts exclude NaNs. - Fixed alerts in notebooks. Other improvements: - Warnings are now sorted. - Links to Binder and Google Colab are added for notebooks (ydataai#349) - The overview section is tabbed.
1 parent ac5fb4d commit 123e443

File tree

235 files changed

+325020
-276087
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

235 files changed

+325020
-276087
lines changed

.travis.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
sudo: required
1+
os: linux
22
dist: bionic
33
language: python
44
cache:

Makefile

Lines changed: 16 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,13 +4,24 @@ docs:
44
rmdir docs/pandas_profiling
55

66
test:
7-
pytest --black tests/unit/
8-
pytest --black tests/issues/
9-
pytest --nbval tests/notebooks/
10-
flake8 . --select=E9,F63,F7,F82 --show-source --statistics
7+
pytest --black tests/unit/
8+
pytest --black tests/issues/
9+
pytest --nbval tests/notebooks/
10+
flake8 . --select=E9,F63,F7,F82 --show-source --statistics
1111

1212
install:
1313
pip install -e .
1414

1515
lint:
16-
black .
16+
black .
17+
18+
typing:
19+
pytest --mypy -m mypy .
20+
21+
all:
22+
make lint
23+
make install
24+
make examples
25+
make docs
26+
make test
27+
make typing

README.md

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -30,12 +30,12 @@ With your help, we got approved for [GitHub Sponsors](https://github.com/sponsor
3030
It's extra exciting that GitHub **matches your contribution** for the first year.
3131
Therefore, we welcome you to support the project through GitHub!
3232

33-
The v2.4 release includes many new features (performance, exporting, GUI and datasets) and stability improvements.
33+
The v2.5.0 release includes many new features and stability improvements.
3434

3535
- [Sponsor the project on GitHub](https://github.com/sponsors/sbrugman)
36-
- [Read the release notes v2.4](https://github.com/pandas-profiling/pandas-profiling/releases/tag/v2.4.0)
36+
- [Read the release notes v2.5.0](https://github.com/pandas-profiling/pandas-profiling/releases/tag/v2.5.0)
3737

38-
*January 7, 2020*
38+
*February 14, 2020 💘*
3939

4040
---
4141

@@ -53,14 +53,16 @@ _Contents:_ **[Examples](#examples)** |
5353
The following examples can give you an impression of what the package can do:
5454

5555
* [Census Income](http://pandas-profiling.github.io/pandas-profiling/examples/census/census_report.html) (US Adult Census data relating income)
56-
* [NASA Meteorites](http://pandas-profiling.github.io/pandas-profiling/examples/meteorites/meteorites_report.html) (comprehensive set of meteorite landings)
57-
* [Titanic](http://pandas-profiling.github.io/pandas-profiling/examples/titanic/titanic_report.html) (the "Wonderwall" of datasets)
56+
* [NASA Meteorites](http://pandas-profiling.github.io/pandas-profiling/examples/meteorites/meteorites_report.html) (comprehensive set of meteorite landings) [![Open In Colab](https://camo.githubusercontent.com/52feade06f2fecbf006889a904d221e6a730c194/68747470733a2f2f636f6c61622e72657365617263682e676f6f676c652e636f6d2f6173736574732f636f6c61622d62616467652e737667)](https://colab.research.google.com/github/pandas-profiling/pandas-profiling/blob/master/examples/meteorites/meteorites.ipynb) [![Binder](https://camo.githubusercontent.com/483bae47a175c24dfbfc57390edd8b6982ac5fb3/68747470733a2f2f6d7962696e6465722e6f72672f62616467655f6c6f676f2e737667)](https://mybinder.org/v2/gh/pandas-profiling/pandas-profiling/master?filepath=examples%2Fmeteorites%2Fmeteorites.ipynb)
57+
* [Titanic](http://pandas-profiling.github.io/pandas-profiling/examples/titanic/titanic_report.html) (the "Wonderwall" of datasets) [![Open In Colab](https://camo.githubusercontent.com/52feade06f2fecbf006889a904d221e6a730c194/68747470733a2f2f636f6c61622e72657365617263682e676f6f676c652e636f6d2f6173736574732f636f6c61622d62616467652e737667)](https://colab.research.google.com/github/pandas-profiling/pandas-profiling/blob/master/examples/titanic/titanic.ipynb) [![Binder](https://camo.githubusercontent.com/483bae47a175c24dfbfc57390edd8b6982ac5fb3/68747470733a2f2f6d7962696e6465722e6f72672f62616467655f6c6f676f2e737667)](https://mybinder.org/v2/gh/pandas-profiling/pandas-profiling/master?filepath=examples%2Ftitanic%2Ftitanic.ipynb)
5858
* [NZA](http://pandas-profiling.github.io/pandas-profiling/examples/nza/nza_report.html) (open data from the Dutch Healthcare Authority)
5959
* [Stata Auto](http://pandas-profiling.github.io/pandas-profiling/examples/stata_auto/stata_auto_report.html) (1978 Automobile data)
6060
* [Vektis](http://pandas-profiling.github.io/pandas-profiling/examples/vektis/vektis_report.html) (Vektis Dutch Healthcare data)
6161
* [Website Inaccessibility](http://pandas-profiling.github.io/pandas-profiling/examples/website_inaccessibility/website_inaccessibility_report.html) (demonstrates the URL type)
6262
* [Colors](http://pandas-profiling.github.io/pandas-profiling/examples/colors/colors_report.html) (a simple colors dataset)
6363
* [Russian Vocabulary](http://pandas-profiling.github.io/pandas-profiling/examples/russian_vocabulary/russian_vocabulary.html) (demonstrates text analysis)
64+
* [Orange prices](http://pandas-profiling.github.io/pandas-profiling/examples/themes/united_report.html) and [Coal prices](http://pandas-profiling.github.io/pandas-profiling/examples/themes/flatly_report.html) (showcase report themes)
65+
* [Tutorial: report structure using Kaggle data (advanced)](http://pandas-profiling.github.io/pandas-profiling/examples/kaggle/modify_report_structure.ipynb) (modify the report's structure) [![Open In Colab](https://camo.githubusercontent.com/52feade06f2fecbf006889a904d221e6a730c194/68747470733a2f2f636f6c61622e72657365617263682e676f6f676c652e636f6d2f6173736574732f636f6c61622d62616467652e737667)](https://colab.research.google.com/github/pandas-profiling/pandas-profiling/blob/master/examples/kaggle/modify_report_structure.ipynb) [![Binder](https://camo.githubusercontent.com/483bae47a175c24dfbfc57390edd8b6982ac5fb3/68747470733a2f2f6d7962696e6465722e6f72672f62616467655f6c6f676f2e737667)](https://mybinder.org/v2/gh/pandas-profiling/pandas-profiling/master?filepath=examples%2Fkaggle%2Fmodify_report_structure.ipynb)
6466

6567
## Installation
6668

@@ -126,7 +128,7 @@ There are two interfaces (see animations below): through widgets and through a H
126128

127129
This is achieved by simply displaying the report. In the Jupyter Notebook, run:
128130
```python
129-
profile
131+
profile.to_widgets()
130132
```
131133

132134
The HTML report can be included in a Juyter notebook:

docs/config.html

Lines changed: 33 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,12 @@ <h1 class="title">Module <code>pandas_profiling.config</code></h1>
4545
&#34;&#34;&#34;The config constructor should be called only once.&#34;&#34;&#34;
4646
if self.config is None:
4747
self.config = confuse.Configuration(&#34;PandasProfiling&#34;, __name__)
48-
self.config.set_file(str(get_config_default()))
48+
49+
self.set_file(str(get_config_default()))
50+
51+
def set_file(self, file_name):
52+
if self.config is not None:
53+
self.config.set_file(file_name)
4954

5055
def set_args(self, namespace: argparse.Namespace, dots: bool) -&gt; None:
5156
&#34;&#34;&#34;
@@ -55,7 +60,8 @@ <h1 class="title">Module <code>pandas_profiling.config</code></h1>
5560
namespace: Dictionary or Namespace to overlay this config with. Supports nested Dictionaries and Namespaces.
5661
dots: If True, any properties on namespace that contain dots (.) will be broken down into child dictionaries.
5762
&#34;&#34;&#34;
58-
self.config.set_args(namespace, dots)
63+
if self.config is not None:
64+
self.config.set_args(namespace, dots)
5965

6066
def _set_kwargs(self, reference, values: dict):
6167
&#34;&#34;&#34;Helper function to set config variables based on kwargs.&#34;&#34;&#34;
@@ -123,7 +129,12 @@ <h2 class="section-title" id="header-classes">Classes</h2>
123129
&#34;&#34;&#34;The config constructor should be called only once.&#34;&#34;&#34;
124130
if self.config is None:
125131
self.config = confuse.Configuration(&#34;PandasProfiling&#34;, __name__)
126-
self.config.set_file(str(get_config_default()))
132+
133+
self.set_file(str(get_config_default()))
134+
135+
def set_file(self, file_name):
136+
if self.config is not None:
137+
self.config.set_file(file_name)
127138

128139
def set_args(self, namespace: argparse.Namespace, dots: bool) -&gt; None:
129140
&#34;&#34;&#34;
@@ -133,7 +144,8 @@ <h2 class="section-title" id="header-classes">Classes</h2>
133144
namespace: Dictionary or Namespace to overlay this config with. Supports nested Dictionaries and Namespaces.
134145
dots: If True, any properties on namespace that contain dots (.) will be broken down into child dictionaries.
135146
&#34;&#34;&#34;
136-
self.config.set_args(namespace, dots)
147+
if self.config is not None:
148+
self.config.set_args(namespace, dots)
137149

138150
def _set_kwargs(self, reference, values: dict):
139151
&#34;&#34;&#34;Helper function to set config variables based on kwargs.&#34;&#34;&#34;
@@ -211,7 +223,22 @@ <h2 id="args">Args</h2>
211223
namespace: Dictionary or Namespace to overlay this config with. Supports nested Dictionaries and Namespaces.
212224
dots: If True, any properties on namespace that contain dots (.) will be broken down into child dictionaries.
213225
&#34;&#34;&#34;
214-
self.config.set_args(namespace, dots)</code></pre>
226+
if self.config is not None:
227+
self.config.set_args(namespace, dots)</code></pre>
228+
</details>
229+
</dd>
230+
<dt id="pandas_profiling.config.Config.set_file"><code class="name flex">
231+
<span>def <span class="ident">set_file</span></span>(<span>self, file_name)</span>
232+
</code></dt>
233+
<dd>
234+
<section class="desc"></section>
235+
<details class="source">
236+
<summary>
237+
<span>Expand source code</span>
238+
</summary>
239+
<pre><code class="python">def set_file(self, file_name):
240+
if self.config is not None:
241+
self.config.set_file(file_name)</code></pre>
215242
</details>
216243
</dd>
217244
<dt id="pandas_profiling.config.Config.set_kwargs"><code class="name flex">
@@ -263,6 +290,7 @@ <h4><code><a title="pandas_profiling.config.Config" href="#pandas_profiling.conf
263290
<li><code><a title="pandas_profiling.config.Config.config" href="#pandas_profiling.config.Config.config">config</a></code></li>
264291
<li><code><a title="pandas_profiling.config.Config.dump" href="#pandas_profiling.config.Config.dump">dump</a></code></li>
265292
<li><code><a title="pandas_profiling.config.Config.set_args" href="#pandas_profiling.config.Config.set_args">set_args</a></code></li>
293+
<li><code><a title="pandas_profiling.config.Config.set_file" href="#pandas_profiling.config.Config.set_file">set_file</a></code></li>
266294
<li><code><a title="pandas_profiling.config.Config.set_kwargs" href="#pandas_profiling.config.Config.set_kwargs">set_kwargs</a></code></li>
267295
</ul>
268296
</li>

0 commit comments

Comments
 (0)