GroupBy.
head
Return first n rows of each group.
Similar to .apply(lambda x: x.head(n)), but it returns a subset of rows from the original DataFrame with original index and order preserved (as_index flag is ignored).
.apply(lambda x: x.head(n))
as_index
Does not work for negative values of n.
See also
Series.groupby
DataFrame.groupby
Examples
>>> df = pd.DataFrame([[1, 2], [1, 4], [5, 6]], ... columns=['A', 'B']) >>> df.groupby('A').head(1) A B 0 1 2 2 5 6 >>> df.groupby('A').head(-1) Empty DataFrame Columns: [A, B] Index: []