modin.pandas.Resampler.first

Resampler.first(numeric_only: bool = False, min_count: int = 0, skipna: bool = True, *args: Any, **kwargs: Any)[source]

Compute the first entry of each column within each group.

Defaults to skipping NA elements.

Parameters:
  • numeric_only (bool, default False) – Include only float, int, boolean columns.

  • min_count (int, default -1) – The required number of valid values to perform the operation. If fewer than min_count valid values are present the result will be NA.

  • skipna (bool, default True) – Exclude NA/null values. If an entire row/column is NA, the result will be NA.

Returns:

First values within each group.

Return type:

Series or DataFrame

Examples

For Series:

>>> lst1 = pd.date_range('2020-01-01', periods=4, freq='1D')
>>> ser1 = pd.Series([1, 2, 3, 4], index=lst1)
>>> ser1
2020-01-01    1
2020-01-02    2
2020-01-03    3
2020-01-04    4
Freq: None, dtype: int64
Copy
>>> ser1.resample('2D').first()
2020-01-01    1
2020-01-03    3
Freq: None, dtype: int64
Copy
>>> lst2 = pd.date_range('2020-01-01', periods=4, freq='S')
>>> ser2 = pd.Series([1, 2, np.nan, 4], index=lst2)
>>> ser2
2020-01-01 00:00:00    1.0
2020-01-01 00:00:01    2.0
2020-01-01 00:00:02    NaN
2020-01-01 00:00:03    4.0
Freq: None, dtype: float64
Copy
>>> ser2.resample('2S').first()
2020-01-01 00:00:00    1.0
2020-01-01 00:00:02    4.0
Freq: None, dtype: float64
Copy

For DataFrame:

>>> data = [[1, 8, 2], [1, 2, 5], [2, 5, 8], [2, 6, 9]]
>>> df = pd.DataFrame(data,
...      columns=["a", "b", "c"],
...      index=pd.date_range('2020-01-01', periods=4, freq='1D'))
>>> df
            a  b  c
2020-01-01  1  8  2
2020-01-02  1  2  5
2020-01-03  2  5  8
2020-01-04  2  6  9
Copy
>>> df.resample('2D').first()
            a  b  c
2020-01-01  1  8  2
2020-01-03  2  5  8
Copy