パンダ: 条件を満たす最初の行を見つける方法


次の構文を使用して、特定の基準を満たす pandas DataFrame の最初の行を検索できます。

 #get first row where value in 'team' column is equal to 'B'
df[df. team == ' B ']. iloc [0]

#get index of first row where value in 'team' column is equal to 'B'
df[df. team == ' B ']. index [0]

次の例は、実際に次の pandas DataFrame でこの構文を使用する方法を示しています。

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' team ': ['A', 'A', 'A', 'B', 'B', 'C', 'C', 'C'],
                   ' points ': [18, 13, 19, 14, 24, 21, 20, 28],
                   ' assists ': [5, 7, 17, 9, 12, 9, 5, 12]})

#view DataFrame
print (df)

  team points assists
0 to 18 5
1 to 13 7
2 A 19 17
3 B 14 9
4 B 24 12
5 C 21 9
6 C 20 5
7 C 28 12

例 1: 条件を満たす最初の行を検索します。

次の構文を使用して、チーム列の値が「B」に等しい最初の行を検索できます。

 #find first row where team is equal to 'B'
df[df. team == ' B ']. iloc [0]

team B
points 14
assists 9
Name: 3, dtype: object

#find index of first row where team is equal to 'B'
df[df. team == ' B ']. index [0]

3

チーム列の値が「B」に等しい最初の行は、インデックス位置 3 にあることがわかります。

例 2: 複数の条件を満たす最初の行を検索する

次の構文を使用して、 points列の値が 15 より大きく、 assists列の値が 10 より大きい最初の行を検索できます。

 #find first row where points > 15 and assists > 10
df[(df. points > 15) & (df. assists > 10)]. iloc [0]

team A
points 19
assists 17
Name: 2, dtype: object

#find index of first row where points > 15 and assists > 10
df[(df. points > 15) & (df. assists > 10)]. index [0]

2

ポイント列の値が 15 より大きく、アシスト列の値が 10 より大きい最初の行は、インデックス位置 2 にあることがわかります。

例 3: 多くの条件の 1 つを満たす最初の行を検索する

次の構文を使用して、 points列の値が 15 より大きいか、 assists列の値が 10 より大きい最初の行を検索できます。

 #find first row where points > 15 or assists > 10
df[(df. points > 15) | (df. assists > 10)]. iloc [0]

team A
points 18
assists 5
Name: 0, dtype: object

#find index of first row where points > 15 or assists > 10
df[(df. points > 15) | (df. assists > 10)]. index [0]

0

ポイント列の値が 15 より大きい、またはアシスト列の値が 10 より大きい最初の行は、インデックス位置 0 にあることがわかります。

追加リソース

次のチュートリアルでは、パンダで他の一般的なタスクを実行する方法を説明します。

PandasでNaN値のない行を選択する方法
Pandasで列の値に基づいて行を選択する方法
Pandas で単一の行を選択する方法

コメントを追加する

メールアドレスが公開されることはありません。 が付いている欄は必須項目です