PythonのPandasライブラリには、データフレームを操作するための便利なメソッドが多数含まれています。その中でも、特定の条件を満たす行を抽出するためのquery
メソッドは非常に有用です。
queryメソッドの基本的な使い方
query
メソッドは、データフレームの行を条件で抽出するためのメソッドです。以下に基本的な使い方を示します。
df.query('a == 3') # a列の値が3である行を抽出
df.query('a != 3') # a列の値が3でない行を抽出
df.query('a > 3') # a列の値が3より大きい行を抽出
複数の条件で抽出
query
メソッドでは、複数の条件を組み合わせて行を抽出することも可能です。以下にその例を示します。
df.query('japanese >= 85 and math >= 85 and english >= 85') # 「国語・数学・英語」で全てで85点以上を取っている優等生を抽出
df.query('japanese == 100 or math == 100 or english == 100') # 「国語・数学・英語」のどれかで100点を取っている生徒を抽出
変数を条件式に使う
query
メソッドでは、条件式の中で変数を使うことができます。これにより、動的に条件を変更することが可能になります。変数を使った条件式は、以下のように @変数名
の形で指定します。
math_average = df['math'].mean() # 数学のテストの平均点を計算
df.query('math > @math_average') # 数学のテストの平均点以上の生徒を抽出
以上、PythonのPandasライブラリのquery
メソッドについて解説しました。このメソッドを使うことで、データフレームから特定の条件を満たす行を効率的に抽出することができます。データ分析を行う際には、ぜひこのメソッドを活用してみてください。.