pandas.core.groupby.DataFrameGroupBy.idxmin¶
- DataFrameGroupBy.idxmin(axis=0, skipna=True, numeric_only=_NoDefault.no_default)[source]¶
Return index of first occurrence of minimum over requested axis.
NA/null values are excluded.
- Parameters
- axis{0 or ‘index’, 1 or ‘columns’}, default 0
The axis to use. 0 or ‘index’ for row-wise, 1 or ‘columns’ for column-wise.
- skipnabool, default True
Exclude NA/null values. If an entire row/column is NA, the result will be NA.
- numeric_onlybool, default True for axis=0, False for axis=1
Include only float, int or boolean data.
New in version 1.5.0.
- Returns
- Series
Indexes of minima along the specified axis.
- Raises
- ValueError
If the row/column is empty
See also
Series.idxmin
Return index of the minimum element.
Notes
This method is the DataFrame version of
ndarray.argmin
.Examples
Consider a dataset containing food consumption in Argentina.
>>> df = pd.DataFrame({'consumption': [10.51, 103.11, 55.48], ... 'co2_emissions': [37.2, 19.66, 1712]}, ... index=['Pork', 'Wheat Products', 'Beef'])
>>> df consumption co2_emissions Pork 10.51 37.20 Wheat Products 103.11 19.66 Beef 55.48 1712.00
By default, it returns the index for the minimum value in each column.
>>> df.idxmin() consumption Pork co2_emissions Wheat Products dtype: object
To return the index for the minimum value in each row, use
axis="columns"
.>>> df.idxmin(axis="columns") Pork consumption Wheat Products co2_emissions Beef consumption dtype: object