77from scipy .stats import chisquare
88
99from ydata_profiling .config import Settings
10+ from ydata_profiling .model .var_description .default import VarDescription
1011
1112T = TypeVar ("T" )
1213
@@ -62,28 +63,38 @@ def chi_square(
6263
6364
6465def series_hashable (
65- fn : Callable [[Settings , pd .Series , dict ], Tuple [Settings , pd .Series , dict ]]
66- ) -> Callable [[Settings , pd .Series , dict ], Tuple [Settings , pd .Series , dict ]]:
66+ fn : Callable [
67+ [Settings , pd .Series , VarDescription ],
68+ Tuple [Settings , pd .Series , VarDescription ],
69+ ]
70+ ) -> Callable [
71+ [Settings , pd .Series , VarDescription ], Tuple [Settings , pd .Series , VarDescription ]
72+ ]:
6773 @functools .wraps (fn )
6874 def inner (
69- config : Settings , series : pd .Series , summary : dict
70- ) -> Tuple [Settings , pd .Series , dict ]:
71- if not summary [ " hashable" ] :
75+ config : Settings , series : pd .Series , summary : VarDescription
76+ ) -> Tuple [Settings , pd .Series , VarDescription ]:
77+ if not summary . hashable :
7278 return config , series , summary
7379 return fn (config , series , summary )
7480
7581 return inner
7682
7783
7884def series_handle_nulls (
79- fn : Callable [[Settings , pd .Series , dict ], Tuple [Settings , pd .Series , dict ]]
80- ) -> Callable [[Settings , pd .Series , dict ], Tuple [Settings , pd .Series , dict ]]:
85+ fn : Callable [
86+ [Settings , pd .Series , VarDescription ],
87+ Tuple [Settings , pd .Series , VarDescription ],
88+ ]
89+ ) -> Callable [
90+ [Settings , pd .Series , VarDescription ], Tuple [Settings , pd .Series , VarDescription ]
91+ ]:
8192 """Decorator for nullable series"""
8293
8394 @functools .wraps (fn )
8495 def inner (
85- config : Settings , series : pd .Series , summary : dict
86- ) -> Tuple [Settings , pd .Series , dict ]:
96+ config : Settings , series : pd .Series , summary : VarDescription
97+ ) -> Tuple [Settings , pd .Series , VarDescription ]:
8798 if series .hasnans :
8899 series = series .dropna ()
89100
@@ -103,92 +114,78 @@ def named_aggregate_summary(series: pd.Series, key: str) -> dict:
103114 return summary
104115
105116
106- @multimethod
107- def describe_counts (
108- config : Settings , series : Any , summary : dict
109- ) -> Tuple [Settings , Any , dict ]:
110- raise NotImplementedError ()
111-
112-
113117@multimethod
114118def describe_supported (
115119 config : Settings , series : Any , series_description : dict
116- ) -> Tuple [Settings , Any , dict ]:
117- raise NotImplementedError ()
118-
119-
120- @multimethod
121- def describe_generic (
122- config : Settings , series : Any , summary : dict
123- ) -> Tuple [Settings , Any , dict ]:
120+ ) -> Tuple [Settings , Any , VarDescription ]:
124121 raise NotImplementedError ()
125122
126123
127124@multimethod
128125def describe_numeric_1d (
129- config : Settings , series : Any , summary : dict
130- ) -> Tuple [Settings , Any , dict ]:
126+ config : Settings , series : Any , summary : VarDescription
127+ ) -> Tuple [Settings , Any , VarDescription ]:
131128 raise NotImplementedError ()
132129
133130
134131@multimethod
135132def describe_text_1d (
136- config : Settings , series : Any , summary : dict
137- ) -> Tuple [Settings , Any , dict , Any ]:
133+ config : Settings , series : Any , summary : VarDescription
134+ ) -> Tuple [Settings , Any , VarDescription ]:
138135 raise NotImplementedError ()
139136
140137
141138@multimethod
142139def describe_date_1d (
143- config : Settings , series : Any , summary : dict
144- ) -> Tuple [Settings , Any , dict ]:
140+ config : Settings , series : Any , summary : VarDescription
141+ ) -> Tuple [Settings , Any , VarDescription ]:
145142 raise NotImplementedError ()
146143
147144
148145@multimethod
149146def describe_categorical_1d (
150- config : Settings , series : pd .Series , summary : dict
151- ) -> Tuple [Settings , pd . Series , dict ]:
147+ config : Settings , series : pd .Series , summary : VarDescription
148+ ) -> Tuple [Settings , Any , VarDescription ]:
152149 raise NotImplementedError ()
153150
154151
155152@multimethod
156153def describe_url_1d (
157- config : Settings , series : Any , summary : dict
158- ) -> Tuple [Settings , Any , dict ]:
154+ config : Settings , series : Any , summary : VarDescription
155+ ) -> Tuple [Settings , Any , VarDescription ]:
159156 raise NotImplementedError ()
160157
161158
162159@multimethod
163160def describe_file_1d (
164- config : Settings , series : Any , summary : dict
165- ) -> Tuple [Settings , Any , dict ]:
161+ config : Settings , series : Any , summary : VarDescription
162+ ) -> Tuple [Settings , Any , VarDescription ]:
166163 raise NotImplementedError ()
167164
168165
169166@multimethod
170167def describe_path_1d (
171- config : Settings , series : Any , summary : dict
172- ) -> Tuple [Settings , Any , dict ]:
168+ config : Settings , series : Any , summary : VarDescription
169+ ) -> Tuple [Settings , Any , VarDescription ]:
173170 raise NotImplementedError ()
174171
175172
176173@multimethod
177174def describe_image_1d (
178- config : Settings , series : Any , summary : dict
179- ) -> Tuple [Settings , Any , dict ]:
175+ config : Settings , series : Any , summary : VarDescription
176+ ) -> Tuple [Settings , Any , VarDescription ]:
180177 raise NotImplementedError ()
181178
182179
183180@multimethod
184181def describe_boolean_1d (
185- config : Settings , series : Any , summary : dict
186- ) -> Tuple [Settings , Any , dict ]:
182+ config : Settings , series : Any , summary : VarDescription
183+ ) -> Tuple [Settings , Any , VarDescription ]:
187184 raise NotImplementedError ()
188185
189186
190187@multimethod
191188def describe_timeseries_1d (
192- config : Settings , series : Any , summary : dict
193- ) -> Tuple [Settings , Any , dict ]:
189+ config : Settings , series : Any , summary : VarDescription
190+ ) -> Tuple [Settings , Any , VarDescription ]:
194191 raise NotImplementedError ()
0 commit comments