パンダ: 各行の最大値を見つける方法
次の基本構文を使用して、pandas DataFrame の各行の最大値を見つけることができます。
df[' max '] = df. max (axis= 1 )
この特定の構文は、DataFrame の各行の最大値を含むmaxという新しい列を作成します。
次の例は、この構文を実際に使用する方法を示しています。
例: Pandas の各行の最大値を見つける
次のパンダ データフレームがあるとします。
import pandas as pd
import numpy as np
#createDataFrame
df = pd. DataFrame ({' points ': [4, np.nan, 10, 2, 15, np.nan, 7, 22],
' rebounds ': [np.nan, 3, 9, 7, 6, 8, 14, 10],
' assists ': [10, 9, 4, 4, 3, 7, 10, 11]})
#view DataFrame
print (df)
points rebound assists
0 4.0 NaN 10
1 NaN 3.0 9
2 10.0 9.0 4
3 2.0 7.0 4
4 15.0 6.0 3
5 NaN 8.0 7
6 7.0 14.0 10
7 22.0 10.0 11
次の構文を使用して、各行の最大値を含むmaxという名前の新しい列を作成できます。
#create new column that contains max value of each row
df[' max '] = df. max (axis= 1 )
#view updated DataFrame
print (df)
points rebounds assists max
0 4.0 NaN 10 10.0
1 NaN 3.0 9 9.0
2 10.0 9.0 4 10.0
3 2.0 7.0 4 7.0
4 15.0 6.0 3 15.0
5 NaN 8.0 7 8.0
6 7.0 14.0 10 14.0
7 22.0 10.0 11 22.0
maxという新しい列には、各行の最大値が含まれます。
たとえば、次のことがわかります。
- 最初の行の最大値は10です。
- 2 行目の最大値は9です。
- 3 行目の最大値は10です。
等々。
また、 max()関数は、各行の最大値を決定するときに NaN 値を自動的に無視することにも注意してください。
特定の列のみの各行の最大値を見つけることもできます。
たとえば、次の構文を使用して各行の最大値を検索し、ポイント列とリバウンド列のみを考慮することができます。
#add new column that contains max value of each row for points and rebounds columns
df[' max '] = df[[' points ', ' rebounds ']]. max (axis= 1 )
#view updated DataFrame
print (df)
points rebounds assists max
0 4.0 NaN 10 4.0
1 NaN 3.0 9 3.0
2 10.0 9.0 4 10.0
3 2.0 7.0 4 7.0
4 15.0 6.0 3 15.0
5 NaN 8.0 7 8.0
6 7.0 14.0 10 14.0
7 22.0 10.0 11 22.0
maxという列には、ポイント列とリバウンド列のみの各行の最大値が含まれます。
注: pandas max()関数の完全なドキュメントはここで見つけることができます。
追加リソース
次のチュートリアルでは、パンダで他の一般的なタスクを実行する方法を説明します。
パンダ: 複数の列の最大値を見つける方法
Pandas: 特定の列の最大値を持つ行を返します
パンダ: inf を Max Value に置き換える方法