
データ分析において、データの大小比較は非常に重要な要素の一つです。PandasはPythonで最も一般的に使用されるデータ分析ライブラリの一つであり、データの大小比較を簡単に行うことができます。
データフレームの作成と基本操作
まずは、Pandasでデータフレームを作成する方法を説明します。
1 2 3 4 5 6 7 | import pandas as pd # データフレームを作成 df = pd.DataFrame({ 'A' : [ 1 , 2 , 3 , 4 ], 'B' : [ 5 , 6 , 7 , 8 ], 'C' : [ 9 , 10 , 11 , 12 ] }) |
上記のコードでは、3つの列を持つデータフレームを作成しています。各列の値は、A列が[1, 2, 3, 4]、B列が[5, 6, 7, 8]、C列が[9, 10, 11, 12]となっています。
データフレームを作成したら、基本操作を学びましょう。
1 2 3 4 5 6 7 8 | # 先頭5行を表示 print (df.head()) # 列名の一覧を表示 print (df.columns) # A列の値を表示 print (df[ 'A' ]) # 行数と列数を表示 print (df.shape) |
上記のコードでは、データフレームの先頭5行を表示し、列名の一覧を表示し、A列の値を表示し、行数と列数を表示しています。
大小比較の実装:比較演算子を使った方法
比較演算子を使った方法は、非常に簡単です。以下のように、比較演算子を使って大小比較を行うことができます。
1 2 3 4 5 6 | # A列が2より大きい行を表示 print (df[df[ 'A' ] > 2 ]) # A列が3以下の行を表示 print (df[df[ 'A' ] < = 3 ]) # B列が5より大きく、C列が10より小さい行を表示 print (df[(df[ 'B' ] > = 5 ) & (df[ 'C' ] < 10 )]) |
上記のコードでは、A列が2より大きい行を表示しています。また、A列が3以下の行を表示しています。最後に、B列が5より大きく、かつC列が10より小さい行を表示しています。
百分位数を使った大小比較の実装
百分位数を使った大小比較も簡単です。以下のように、quantile関数を使って百分位数を計算し、大小比較を行うことができます。
1 2 3 4 5 6 7 8 | # A列の50パーセンタイルを計算 percentile = df[ 'A' ].quantile( 0.5 ) # A列が50パーセンタイルより大きい行を表示 print (df[df[ 'A' ] > percentile]) # B列の75パーセンタイルを計算 percentile = df[ 'B' ].quantile( 0.75 ) # B列が75パーセンタイル以下の行を表示 print (df[df[ 'B' ] < = percentile]) |
上記のコードでは、A列の50パーセンタイルを計算し、A列が50パーセンタイルより大きい行を表示しています。また、B列の75パーセンタイルを計算し、B列が75パーセンタイル以下の行を表示しています。
条件に応じたデータフレームの絞り込み方法
条件に応じたデータフレームの絞り込みも簡単です。以下のように、query関数を使って条件に応じたデータフレームを作成することができます。
1 2 3 4 5 6 | # A列が2より大きく、B列が7より小さい行を表示 print (df.query( 'A > 2 and B < 7' )) # C列が10以下の行を表示 print (df.query( 'C <= 10' )) # A列が1または4の行を表示 print (df.query( 'A == 1 or A == 4' )) |
上記のコードでは、A列が2より大きく、かつB列が7より小さい行を表示しています。また、C列が10以下の行を表示し、最後に、A列が1または4の行を表示しています。
まとめ
Pandasを使うことで、データの大小比較を簡単に行うことができます。比較演算子や百分位数、query関数を使って、条件に応じたデータフレームの絞り込みも簡単に行うことができます。
今回は、Pandasでデータを簡単に大小比較する方法を紹介しました。是非、実際にデータ分析で使用してみてください。