dask.dataframe.groupby.DataFrameGroupBy.get_group

dask.dataframe.groupby.DataFrameGroupBy.get_group

DataFrameGroupBy.get_group(key)

从具有提供名称的组构造 DataFrame。

此文档字符串是从 pandas.core.groupby.groupby.GroupBy.get_group 复制的。

Dask 版本可能存在一些不一致性。

已知的不一致性:

如果组不存在,Dask 将返回一个空的 Series/DataFrame。

参数
名称object (Dask 中不支持)

要获取的组的名称,作为 DataFrame。

objDataFrame,默认为 None (Dask 不支持)

要从中提取 DataFrame 的 DataFrame。如果为 None,则将使用调用 groupby 的对象。

2.1.0 版后已移除: obj 已被弃用,并将在未来的版本中移除。请使用 df.iloc[gb.indices.get(name)] 代替 gb.get_group(name, obj=df)

返回
与 obj 相同类型

示例

对于 SeriesGroupBy:

>>> lst = ['a', 'a', 'b']  
>>> ser = pd.Series([1, 2, 3], index=lst)  
>>> ser  
a    1
a    2
b    3
dtype: int64
>>> ser.groupby(level=0).get_group("a")  
a    1
a    2
dtype: int64

对于 DataFrameGroupBy:

>>> data = [[1, 2, 3], [1, 5, 6], [7, 8, 9]]  
>>> df = pd.DataFrame(data, columns=["a", "b", "c"],  
...                   index=["owl", "toucan", "eagle"])
>>> df  
        a  b  c
owl     1  2  3
toucan  1  5  6
eagle   7  8  9
>>> df.groupby(by=["a"]).get_group((1,))  
        a  b  c
owl     1  2  3
toucan  1  5  6

对于重采样器:

>>> ser = pd.Series([1, 2, 3, 4], index=pd.DatetimeIndex(  
...                 ['2023-01-01', '2023-01-15', '2023-02-01', '2023-02-15']))
>>> ser  
2023-01-01    1
2023-01-15    2
2023-02-01    3
2023-02-15    4
dtype: int64
>>> ser.resample('MS').get_group('2023-01-01')  
2023-01-01    1
2023-01-15    2
dtype: int64