Compute the first entry of each column within each group.
Defaults to skipping NA elements.
Include only float, int, boolean columns.
The required number of valid values to perform the operation. If fewer than min_count valid values are present the result will be NA.
Exclude NA/null values. If an entire row/column is NA, the result will be NA.
Added in version 2.2.1.
First values within each group.
See also
DataFrame.groupbyApply a function groupby to each row or column of a DataFrame.
pandas.core.groupby.DataFrameGroupBy.lastCompute the last non-null entry of each column.
pandas.core.groupby.DataFrameGroupBy.nthTake the nth row from each group.
Examples
>>> df = pd.DataFrame(dict(A=[1, 1, 3], B=[None, 5, 6], C=[1, 2, 3],
... D=['3/11/2000', '3/12/2000', '3/13/2000']))
>>> df['D'] = pd.to_datetime(df['D'])
>>> df.groupby("A").first()
B C D
A
1 5.0 1 2000-03-11
3 6.0 3 2000-03-13
>>> df.groupby("A").first(min_count=2)
B C D
A
1 NaN 1.0 2000-03-11
3 NaN NaN NaT
>>> df.groupby("A").first(numeric_only=True)
B C
A
1 5.0 1
3 6.0 3
© 2008–2011, AQR Capital Management, LLC, Lambda Foundry, Inc. and PyData Development Team
© 2011–2025, Open source contributors
Licensed under the 3-clause BSD License.
https://pandas.pydata.org/pandas-docs/version/2.3.0/reference/api/pandas.core.groupby.SeriesGroupBy.first.html