Pandas で「and」演算子を使用する方法 (例あり)


記号& は、パンダの「AND」演算子として使用できます。

たとえば、次の基本構文を使用して、条件 12 を満たすパンダ データフレーム内の行をフィルターできます。

 df[(condition1) & (condition2)]

次の例は、さまざまなシナリオでこの「AND」演算子を使用する方法を示しています。

例 1: Pandas で「AND」演算子を使用して数値に基づいて行をフィルターする

次のパンダ データフレームがあるとします。

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' team ': ['A', 'A', 'B', 'B', 'B', 'B', 'C', 'C'],
                   ' points ': [25, 12, 15, 14, 19, 23, 25, 29],
                   ' assists ': [5, 7, 7, 9, 12, 9, 9, 4],
                   ' rebounds ': [11, 8, 10, 6, 6, 5, 9, 12]})

#view DataFrame
print (df)

  team points assists rebounds
0 to 25 5 11
1 to 12 7 8
2 B 15 7 10
3 B 14 9 6
4 B 19 12 6
5 B 23 9 5
6 C 25 9 9
7 C 29 4 12

次の構文を使用して、points 列の値が 20 より大きく assists 列の値が 9 に等しい DataFrame の行をフィルターできます。

 #filter rows where points > 20 and assists = 9
df[(df. points > 20) & (df. assists == 9)]

        team points assists rebounds
5 B 23 9 5
6 C 25 9 9

返される行は、ポイント値が 20 より大きくアシスト値が 9 に等しい行のみです。

例 2: 「AND」演算子を使用して Pandas の文字列値に基づいて行をフィルタリングする

次のパンダ データフレームがあるとします。

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' team ': ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H'],
                   ' position ': ['G', 'G', 'F', 'F', 'C', 'F', 'C', 'C'],
                   ' conference ': ['W', 'W', 'W', 'W', 'E', 'E', 'E', 'E'],
                   ' points ': [11, 8, 10, 6, 6, 5, 9, 12]})

#view DataFrame
print (df)

  team position conference points
0 AGW 11
1 BGW 8
2 CFW 10
3DFW 6
4 ECE 6
5 FFE 5
6 GCE 9
7 HCE 12

次の構文を使用して、位置列の値が G に等しく会議列の値が W に等しいデータフレーム内の行をフィルターできます。

 #filter rows based on string values
df[(df. position == ' G ') & (df. conference == ' W ') ]

team position conference points
0 A G W 11
1 B G W 8

返される行は、職位列が G に等しく会議列が W に等しい行のみです。

追加リソース

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

Pandas で「OR」演算子を使用する方法
Pandas DataFrame 行を日付でフィルターする方法
Pandas DataFrame を列値でフィルタリングする方法

コメントを追加する

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