Title:Pythonとpandasでデータのアグリゲーションと集計を効率よく行う方法

この記事では、Pythonのpandasライブラリを用いてデータのアグリゲーションと集計を効率よく行う方法について解説します。具体的なコード例、その詳細な解説、さらには応用例も2つ紹介します。

目次

はじめに

データのアグリゲーションと集計は、データ解析の基本的なステップの一つです。Pythonのpandasライブラリは、これらのタスクを非常に効率よく実行できる強力なツールです。

pandasによる基本的なアグリゲーションと集計

アグリゲーションとは、多くのデータを一つまたは少数の指標で表す処理のことです。

基本的なコード

以下は、pandasでの簡単なデータのアグリゲーションと集計のコード例です。

import pandas as pd

# サンプルデータ作成
data = {'名前': ['Alice', 'Bob', 'Charlie', 'David', 'Emily'],
        '年齢': [24, 27, 22, 32, 29],
        '都道府県': ['東京', '大阪', '東京', '神奈川', '大阪']}
df = pd.DataFrame(data)

# 年齢の平均を計算
average_age = df['年齢'].mean()
print(f"平均年齢は{average_age}歳です。")

コード解説

– `import pandas as pd`: pandasライブラリを読み込みます。
– `pd.DataFrame(data)`: 辞書形式のデータからDataFrameを作成します。
– `df[‘年齢’].mean()`: 年齢列の平均値を計算します。

応用例1: グループ別の平均年齢の計算

コード

# 都道府県ごとに平均年齢を計算
average_age_by_prefecture = df.groupby('都道府県')['年齢'].mean()
print(average_age_by_prefecture)

解説

`groupby(‘都道府県’)`で都道府県ごとにデータをグループ化し、`[‘年齢’].mean()`で各グループの平均年齢を計算します。

応用例2: 複数の統計値を一度に計算

コード

# 都道府県ごとに平均、最小、最大年齢を計算
stats_by_prefecture = df.groupby('都道府県')['年齢'].agg(['mean', 'min', 'max'])
print(stats_by_prefecture)

解説

`agg([‘mean’, ‘min’, ‘max’])`を用いて、都道府県ごとに平均年齢、最小年齢、最大年齢を一度に計算します。

まとめ

この記事では、Pythonのpandasライブラリを用いたデータのアグリゲーションと集計の基本から応用までを解説しました。これらのテクニックはデータ解析作業を大幅に効率化するため、ぜひマスターしてください。

コメント

コメントする

目次