MCPcopy Create free account
hub / github.com/dask/dask / SeriesGroupBy

Class SeriesGroupBy

dask/dataframe/dask_expr/_groupby.py:2198–2313  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

2196
2197
2198class SeriesGroupBy(GroupBy):
2199 def __init__(
2200 self,
2201 obj,
2202 by,
2203 group_keys=True,
2204 sort=None,
2205 observed=None,
2206 dropna=None,
2207 slice=None,
2208 ):
2209 # Raise pandas errors if applicable
2210 if isinstance(obj, Series):
2211 if isinstance(by, FrameBase):
2212 obj._meta.groupby(by._meta, **_as_dict("observed", observed))
2213 elif isinstance(by, (list, tuple)) and any(
2214 isinstance(x, FrameBase) for x in by
2215 ):
2216 metas = [x._meta if isinstance(x, FrameBase) else x for x in by]
2217 obj._meta.groupby(metas, **_as_dict("observed", observed))
2218 elif isinstance(by, list):
2219 if len(by) == 0:
2220 raise ValueError("No group keys passed!")
2221
2222 non_series_items = [item for item in by if not isinstance(item, Series)]
2223 obj._meta.groupby(non_series_items, **_as_dict("observed", observed))
2224 else:
2225 obj._meta.groupby(by, **_as_dict("observed", observed))
2226
2227 super().__init__(
2228 obj,
2229 by=by,
2230 group_keys=group_keys,
2231 slice=slice,
2232 observed=observed,
2233 dropna=dropna,
2234 sort=sort,
2235 )
2236
2237 @derived_from(pd.core.groupby.SeriesGroupBy)
2238 def value_counts(self, **kwargs):
2239 return self._single_agg(ValueCounts, **kwargs)
2240
2241 @derived_from(pd.core.groupby.SeriesGroupBy)
2242 def unique(self, **kwargs):
2243 return self._single_agg(Unique, **kwargs)
2244
2245 def idxmin(
2246 self,
2247 split_every=None,
2248 split_out=None,
2249 skipna=True,
2250 numeric_only=False,
2251 **kwargs,
2252 ):
2253 # pandas doesn't support numeric_only here, which is odd
2254 return self._single_agg(
2255 IdxMin,

Callers 2

groupbyMethod · 0.90
__getitem__Method · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected