Pythonでpandasを用いたデータのグルーピングと集計

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を用いたデータのグルーピングと集計について詳しく解説しました。これらの機能はデータ分析作業において頻繁に用いられるものであり、その使い方をマスターすることで、より高度なデータ解析が可能となります。

コメント

コメントする

目次