pandas-plots 0.13.0__py3-none-any.whl → 0.14.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- pandas_plots/__init__.py +0 -0
- {pandas_plots-0.13.0.dist-info → pandas_plots-0.14.0.dist-info}/METADATA +21 -24
- pandas_plots-0.14.0.dist-info/RECORD +9 -0
- {pandas_plots-0.13.0.dist-info → pandas_plots-0.14.0.dist-info}/WHEEL +1 -2
- pandas_plots-0.13.0.dist-info/RECORD +0 -10
- pandas_plots-0.13.0.dist-info/pii.py +0 -76
- pandas_plots-0.13.0.dist-info/top_level.txt +0 -1
- {pandas_plots-0.13.0.dist-info → pandas_plots-0.14.0.dist-info}/licenses/LICENSE +0 -0
pandas_plots/__init__.py
ADDED
File without changes
|
@@ -1,38 +1,34 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: pandas-plots
|
3
|
-
Version: 0.
|
3
|
+
Version: 0.14.0
|
4
4
|
Summary: A collection of helper for table handling and visualization
|
5
|
-
|
6
|
-
|
7
|
-
Author-email: dexterDSDo@googlemail.com
|
8
|
-
License: MIT
|
9
|
-
Project-URL: Documentation, https://github.com/smeisegeier/pandas-plots
|
10
|
-
Project-URL: Source Code, https://github.com/smeisegeier/pandas-plots
|
5
|
+
Project-URL: Homepage, https://github.com/smeisegeier/pandas-plots
|
6
|
+
Project-URL: Repository, https://github.com/smeisegeier/pandas-plots
|
11
7
|
Project-URL: Bug Tracker, https://github.com/smeisegeier/pandas-plots/issues
|
12
|
-
|
13
|
-
|
14
|
-
|
8
|
+
Author-email: smeisegeier <meisegeiers@rki.de>
|
9
|
+
License-File: LICENSE
|
10
|
+
Keywords: pivot,plot,plotly,tables,venn,vizualization
|
15
11
|
Classifier: Development Status :: 4 - Beta
|
16
12
|
Classifier: Intended Audience :: Science/Research
|
13
|
+
Classifier: License :: OSI Approved :: MIT License
|
17
14
|
Classifier: Operating System :: OS Independent
|
15
|
+
Classifier: Programming Language :: Python :: 3
|
16
|
+
Classifier: Programming Language :: Python :: 3.10
|
18
17
|
Classifier: Topic :: Scientific/Engineering
|
19
18
|
Requires-Python: >=3.10
|
20
|
-
|
21
|
-
|
22
|
-
Requires-Dist:
|
23
|
-
Requires-Dist: plotly<6
|
24
|
-
Requires-Dist: matplotlib>=3.8.2
|
19
|
+
Requires-Dist: dataframe-image>=0.2.6
|
20
|
+
Requires-Dist: duckdb>=1.3.0
|
21
|
+
Requires-Dist: jinja2>=3.1.4
|
25
22
|
Requires-Dist: matplotlib-venn==0.11.10
|
26
|
-
Requires-Dist:
|
27
|
-
Requires-Dist: Jinja2>=3.1.4
|
28
|
-
Requires-Dist: requests>=2.32.0
|
29
|
-
Requires-Dist: numpy<2.0.0
|
23
|
+
Requires-Dist: matplotlib>=3.8.2
|
30
24
|
Requires-Dist: missingno>=0.5.2
|
31
|
-
Requires-Dist: duckdb>=1.0.0
|
32
|
-
Requires-Dist: kaleido>=0.2.0
|
33
25
|
Requires-Dist: nbformat>=4.2.0
|
34
|
-
Requires-Dist:
|
35
|
-
|
26
|
+
Requires-Dist: numpy<2.0.0
|
27
|
+
Requires-Dist: pandas>=2.0.0
|
28
|
+
Requires-Dist: plotly>=6.2
|
29
|
+
Requires-Dist: requests>=2.32.0
|
30
|
+
Requires-Dist: seaborn>=0.13.2
|
31
|
+
Description-Content-Type: text/markdown
|
36
32
|
|
37
33
|
# pandas-plots
|
38
34
|
|
@@ -98,6 +94,7 @@ tbl.show_num_df(
|
|
98
94
|
- `plot_joints()` a joint plot for **exactly two numerical** columns
|
99
95
|
- `plot_quadrants()` quickly shows a 2x2 heatmap
|
100
96
|
- `plot_facet_stacked_bars()` shows stacked bars for a facet value as subplots
|
97
|
+
- `plot_sankey()` generates a Sankey diagram
|
101
98
|
<br>
|
102
99
|
|
103
100
|
- `ven` offers functions for _venn diagrams_
|
@@ -175,4 +172,4 @@ _df, _details = ven.show_venn3(
|
|
175
172
|
|
176
173
|
## tags
|
177
174
|
|
178
|
-
#pandas, #plotly, #visualizations, #statistics
|
175
|
+
#pandas, #plotly, #visualizations, #statistics
|
@@ -0,0 +1,9 @@
|
|
1
|
+
pandas_plots/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
2
|
+
pandas_plots/hlp.py,sha256=z8rrVNbH9qMohdXPT-FksP-VkTOjI0bGFj47Sw5p3aY,21141
|
3
|
+
pandas_plots/pls.py,sha256=80uXr3bT66LGjDcuT4a0ewCBwATcOUZ3QQ228Hn9glY,60052
|
4
|
+
pandas_plots/tbl.py,sha256=R2E6FLhxNpUtS88Zf88Eh9i8dSKgmJtmFimFvOt0foQ,32780
|
5
|
+
pandas_plots/ven.py,sha256=2x3ACo2vSfO3q6fv-UdDQ0h1SJyt8WChBGgE5SDCdCk,11673
|
6
|
+
pandas_plots-0.14.0.dist-info/METADATA,sha256=tw4QxZ9io1c9MgSESxsrGHdKXqoTr9-xNfOpV5hxfUo,7394
|
7
|
+
pandas_plots-0.14.0.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
8
|
+
pandas_plots-0.14.0.dist-info/licenses/LICENSE,sha256=ltLbQWUCs-GBQlTPXbt5nHNBE9U5LzjjoS1Y8hHETM4,1051
|
9
|
+
pandas_plots-0.14.0.dist-info/RECORD,,
|
@@ -1,10 +0,0 @@
|
|
1
|
-
pandas_plots/hlp.py,sha256=z8rrVNbH9qMohdXPT-FksP-VkTOjI0bGFj47Sw5p3aY,21141
|
2
|
-
pandas_plots/pls.py,sha256=80uXr3bT66LGjDcuT4a0ewCBwATcOUZ3QQ228Hn9glY,60052
|
3
|
-
pandas_plots/tbl.py,sha256=R2E6FLhxNpUtS88Zf88Eh9i8dSKgmJtmFimFvOt0foQ,32780
|
4
|
-
pandas_plots/ven.py,sha256=2x3ACo2vSfO3q6fv-UdDQ0h1SJyt8WChBGgE5SDCdCk,11673
|
5
|
-
pandas_plots-0.13.0.dist-info/licenses/LICENSE,sha256=ltLbQWUCs-GBQlTPXbt5nHNBE9U5LzjjoS1Y8hHETM4,1051
|
6
|
-
pandas_plots-0.13.0.dist-info/METADATA,sha256=G7Vx-tY6PgbcchOatYf8lr1vA62k-ik3Zx3dCSLhWqM,7430
|
7
|
-
pandas_plots-0.13.0.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
8
|
-
pandas_plots-0.13.0.dist-info/pii.py,sha256=2WKE-W9s285jPdsTqCgt1uxuW4lj1PYCVOYB2fYDNwQ,2195
|
9
|
-
pandas_plots-0.13.0.dist-info/top_level.txt,sha256=XnaNuIHBqMmCeh_U7nKOYTwFue_SIA0wxuDgdPmnnSk,13
|
10
|
-
pandas_plots-0.13.0.dist-info/RECORD,,
|
@@ -1,76 +0,0 @@
|
|
1
|
-
import pandas as pd
|
2
|
-
import re
|
3
|
-
|
4
|
-
|
5
|
-
def remove_pii(
|
6
|
-
series: pd.Series,
|
7
|
-
verbose: bool = True,
|
8
|
-
logging: bool = False,
|
9
|
-
custom_regex="",
|
10
|
-
) -> pd.Index:
|
11
|
-
"""
|
12
|
-
Remove personally identifiable information (PII) from the given column.
|
13
|
-
|
14
|
-
Parameters:
|
15
|
-
- series: A pandas Series representing a column in a DataFrame.
|
16
|
-
- verbose: If True, print pii items
|
17
|
-
- logging: If True, write pii items into the file .pii.log
|
18
|
-
- custom_regex: Regex that is injected into detection
|
19
|
-
|
20
|
-
Returns:
|
21
|
-
- index object with indexes of all pii items
|
22
|
-
|
23
|
-
Remarks:
|
24
|
-
- df.drop(axis=0, index=result, inplace=True)
|
25
|
-
"""
|
26
|
-
|
27
|
-
# * reject empty columns
|
28
|
-
assert len(series) > 0
|
29
|
-
|
30
|
-
col = series.copy()
|
31
|
-
|
32
|
-
# * na must be dropped to ensure processsing
|
33
|
-
col.dropna(inplace=True)
|
34
|
-
|
35
|
-
# * find terms
|
36
|
-
_terms = frozenset(["lösch", "herr", "frau", "strasse", "klinik"])
|
37
|
-
idx_terms = col[
|
38
|
-
col.str.contains(
|
39
|
-
"|".join(_terms),
|
40
|
-
case=False,
|
41
|
-
regex=True,
|
42
|
-
)
|
43
|
-
].index
|
44
|
-
|
45
|
-
# # * optional: search for terms in whole df
|
46
|
-
# df.apply(lambda row: row.astype(str).str.contains('test', case=False, regex=True).any(), axis=1)
|
47
|
-
|
48
|
-
# # * find dates
|
49
|
-
ptr_date = r"\d{2}\.\d{2}\.\d{4}"
|
50
|
-
idx_date = col[col.str.contains(ptr_date, regex=True)].index
|
51
|
-
|
52
|
-
# * dr
|
53
|
-
ptr_dr = r"[D|d][R|r]\. | Fr\. | Hr\. | PD "
|
54
|
-
idx_dr = col[col.str.contains(ptr_dr, regex=True)].index
|
55
|
-
|
56
|
-
# * custom
|
57
|
-
idx_custom = (
|
58
|
-
col[col.str.contains(custom_regex, regex=True)].index
|
59
|
-
if custom_regex
|
60
|
-
else pd.Index([])
|
61
|
-
)
|
62
|
-
|
63
|
-
idx_all = idx_terms.union(idx_date).union(idx_dr).union(idx_custom)
|
64
|
-
|
65
|
-
if verbose:
|
66
|
-
# print(f"found: {idx_dr.__len__()} dr | {idx_date.__len__()} date | {idx_terms.__len__()} terms")
|
67
|
-
print(f"found {idx_all.__len__():_} pii items:")
|
68
|
-
print(col.loc[idx_all].tolist())
|
69
|
-
|
70
|
-
if logging: # Assuming logging is defined and has the correct value
|
71
|
-
data = col.loc[idx_all] # Assuming col and idx_all are defined
|
72
|
-
with open(".pii.log", "w") as f:
|
73
|
-
# ! when using str(), it will give only a summary!
|
74
|
-
f.write(data.to_string(index=True))
|
75
|
-
|
76
|
-
return idx_all
|
@@ -1 +0,0 @@
|
|
1
|
-
pandas_plots
|
File without changes
|