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
@@ -58,28 +59,38 @@ def chi_square(
5859
5960
6061def series_hashable (
61- fn : Callable [[Settings , pd .Series , dict ], Tuple [Settings , pd .Series , dict ]]
62- ) -> Callable [[Settings , pd .Series , dict ], Tuple [Settings , pd .Series , dict ]]:
62+ fn : Callable [
63+ [Settings , pd .Series , VarDescription ],
64+ Tuple [Settings , pd .Series , VarDescription ],
65+ ]
66+ ) -> Callable [
67+ [Settings , pd .Series , VarDescription ], Tuple [Settings , pd .Series , VarDescription ]
68+ ]:
6369 @functools .wraps (fn )
6470 def inner (
65- config : Settings , series : pd .Series , summary : dict
66- ) -> Tuple [Settings , pd .Series , dict ]:
67- if not summary [ " hashable" ] :
71+ config : Settings , series : pd .Series , summary : VarDescription
72+ ) -> Tuple [Settings , pd .Series , VarDescription ]:
73+ if not summary . hashable :
6874 return config , series , summary
6975 return fn (config , series , summary )
7076
7177 return inner
7278
7379
7480def series_handle_nulls (
75- fn : Callable [[Settings , pd .Series , dict ], Tuple [Settings , pd .Series , dict ]]
76- ) -> Callable [[Settings , pd .Series , dict ], Tuple [Settings , pd .Series , dict ]]:
81+ fn : Callable [
82+ [Settings , pd .Series , VarDescription ],
83+ Tuple [Settings , pd .Series , VarDescription ],
84+ ]
85+ ) -> Callable [
86+ [Settings , pd .Series , VarDescription ], Tuple [Settings , pd .Series , VarDescription ]
87+ ]:
7788 """Decorator for nullable series"""
7889
7990 @functools .wraps (fn )
8091 def inner (
81- config : Settings , series : pd .Series , summary : dict
82- ) -> Tuple [Settings , pd .Series , dict ]:
92+ config : Settings , series : pd .Series , summary : VarDescription
93+ ) -> Tuple [Settings , pd .Series , VarDescription ]:
8394 if series .hasnans :
8495 series = series .dropna ()
8596
@@ -99,92 +110,78 @@ def named_aggregate_summary(series: pd.Series, key: str) -> dict:
99110 return summary
100111
101112
102- @multimethod
103- def describe_counts (
104- config : Settings , series : Any , summary : dict
105- ) -> Tuple [Settings , Any , dict ]:
106- raise NotImplementedError ()
107-
108-
109113@multimethod
110114def describe_supported (
111115 config : Settings , series : Any , series_description : dict
112- ) -> Tuple [Settings , Any , dict ]:
113- raise NotImplementedError ()
114-
115-
116- @multimethod
117- def describe_generic (
118- config : Settings , series : Any , summary : dict
119- ) -> Tuple [Settings , Any , dict ]:
116+ ) -> Tuple [Settings , Any , VarDescription ]:
120117 raise NotImplementedError ()
121118
122119
123120@multimethod
124121def describe_numeric_1d (
125- config : Settings , series : Any , summary : dict
126- ) -> Tuple [Settings , Any , dict ]:
122+ config : Settings , series : Any , summary : VarDescription
123+ ) -> Tuple [Settings , Any , VarDescription ]:
127124 raise NotImplementedError ()
128125
129126
130127@multimethod
131128def describe_text_1d (
132- config : Settings , series : Any , summary : dict
133- ) -> Tuple [Settings , Any , dict , Any ]:
129+ config : Settings , series : Any , summary : VarDescription
130+ ) -> Tuple [Settings , Any , VarDescription ]:
134131 raise NotImplementedError ()
135132
136133
137134@multimethod
138135def describe_date_1d (
139- config : Settings , series : Any , summary : dict
140- ) -> Tuple [Settings , Any , dict ]:
136+ config : Settings , series : Any , summary : VarDescription
137+ ) -> Tuple [Settings , Any , VarDescription ]:
141138 raise NotImplementedError ()
142139
143140
144141@multimethod
145142def describe_categorical_1d (
146- config : Settings , series : pd .Series , summary : dict
147- ) -> Tuple [Settings , pd . Series , dict ]:
143+ config : Settings , series : pd .Series , summary : VarDescription
144+ ) -> Tuple [Settings , Any , VarDescription ]:
148145 raise NotImplementedError ()
149146
150147
151148@multimethod
152149def describe_url_1d (
153- config : Settings , series : Any , summary : dict
154- ) -> Tuple [Settings , Any , dict ]:
150+ config : Settings , series : Any , summary : VarDescription
151+ ) -> Tuple [Settings , Any , VarDescription ]:
155152 raise NotImplementedError ()
156153
157154
158155@multimethod
159156def describe_file_1d (
160- config : Settings , series : Any , summary : dict
161- ) -> Tuple [Settings , Any , dict ]:
157+ config : Settings , series : Any , summary : VarDescription
158+ ) -> Tuple [Settings , Any , VarDescription ]:
162159 raise NotImplementedError ()
163160
164161
165162@multimethod
166163def describe_path_1d (
167- config : Settings , series : Any , summary : dict
168- ) -> Tuple [Settings , Any , dict ]:
164+ config : Settings , series : Any , summary : VarDescription
165+ ) -> Tuple [Settings , Any , VarDescription ]:
169166 raise NotImplementedError ()
170167
171168
172169@multimethod
173170def describe_image_1d (
174- config : Settings , series : Any , summary : dict
175- ) -> Tuple [Settings , Any , dict ]:
171+ config : Settings , series : Any , summary : VarDescription
172+ ) -> Tuple [Settings , Any , VarDescription ]:
176173 raise NotImplementedError ()
177174
178175
179176@multimethod
180177def describe_boolean_1d (
181- config : Settings , series : Any , summary : dict
182- ) -> Tuple [Settings , Any , dict ]:
178+ config : Settings , series : Any , summary : VarDescription
179+ ) -> Tuple [Settings , Any , VarDescription ]:
183180 raise NotImplementedError ()
184181
185182
186183@multimethod
187184def describe_timeseries_1d (
188- config : Settings , series : Any , summary : dict
189- ) -> Tuple [Settings , Any , dict ]:
185+ config : Settings , series : Any , summary : VarDescription
186+ ) -> Tuple [Settings , Any , VarDescription ]:
190187 raise NotImplementedError ()
0 commit comments