pandas.core.groupby.DataFrameGroupBy.__iter__#
- DataFrameGroupBy.__iter__()[source]#
Groupby iterator.
This method provides an iterator over the groups created by the
resample
orgroupby
operation on the object. The method yields tuples where the first element is the label (group key) corresponding to each group or resampled bin, and the second element is the subset of the data that falls within that group or bin.- Returns:
- Iterator
Generator yielding a sequence of (name, subsetted object) for each group.
See also
Series.groupby
Group data by a specific key or column.
DataFrame.groupby
Group DataFrame using mapper or by columns.
DataFrame.resample
Resample a DataFrame.
Series.resample
Resample a Series.
Examples
For SeriesGroupBy:
>>> lst = ["a", "a", "b"] >>> ser = pd.Series([1, 2, 3], index=lst) >>> ser a 1 a 2 b 3 dtype: int64 >>> for x, y in ser.groupby(level=0): ... print(f"{x}\n{y}\n") a a 1 a 2 dtype: int64 b b 3 dtype: int64
For DataFrameGroupBy:
>>> data = [[1, 2, 3], [1, 5, 6], [7, 8, 9]] >>> df = pd.DataFrame(data, columns=["a", "b", "c"]) >>> df a b c 0 1 2 3 1 1 5 6 2 7 8 9 >>> for x, y in df.groupby(by=["a"]): ... print(f"{x}\n{y}\n") (1,) a b c 0 1 2 3 1 1 5 6 (7,) a b c 2 7 8 9
For Resampler:
>>> 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 >>> for x, y in ser.resample("MS"): ... print(f"{x}\n{y}\n") 2023-01-01 00:00:00 2023-01-01 1 2023-01-15 2 dtype: int64 2023-02-01 00:00:00 2023-02-01 3 2023-02-15 4 dtype: int64