Pythonのライブラリであるpandasを用いてデータのグルーピングと集計を行う方法について詳しく解説します。pandasの基本的な操作から応用的な集計まで、具体的なコード例とその解説、応用例を含めてご紹介します。
目次
はじめに
pandasはPythonで使用されるデータ分析のためのライブラリです。グルーピングと集計はデータ解析において非常に重要な作業であり、pandasにはこれを効率よく行うための多くの機能があります。
pandasの基本的な操作
インストールとインポート
まずは、pandasをインストールして、Pythonスクリプトで使用できるようにしましょう。
!pip install pandas
import pandas as pd
DataFrameの作成
pandasでのデータの形式は主にDataFrameです。以下のようにしてDataFrameを作成します。
import pandas as pd
data = {'Name': ['Alice', 'Bob', 'Charlie', 'Dave'],
'Age': [25, 30, 35, 40],
'Salary': [50000, 55000, 60000, 65000]}
df = pd.DataFrame(data)
データのグルーピング
基本的なグルーピング
groupby関数を使用して、特定のカラムに基づいてデータをグループ化します。
grouped = df.groupby('Age')
グループごとの集計
グループごとに集計を行う場合は、agg関数を使用します。
# 平均値を求める
grouped.agg({'Salary': 'mean'})
データの集計
集計関数
集計には様々な関数が使用できます。例として、`sum`、`mean`、`max`などがあります。
# 各年齢層の最高給与
grouped.agg({'Salary': 'max'})
応用例
複数のカラムでのグルーピング
複数のカラムでグループ化を行う例です。
# 'Age'と'Salary'でグループ化
grouped_multiple = df.groupby(['Age', 'Salary']).size().reset_index(name='Counts')
カスタム集計関数の使用
自分自身で集計関数を定義して使用する方法です。
# 平均値を2倍にするカスタム関数
def custom_mean(s):
return s.mean() * 2
grouped.agg({'Salary': custom_mean})
まとめ
この記事では、pandasを用いたデータのグルーピングと集計について詳しく解説しました。これらの機能はデータ分析作業において頻繁に用いられるものであり、その使い方をマスターすることで、より高度なデータ解析が可能となります。
コメント