この記事では、Pythonのライブラリであるpandasを使用して、ピボットテーブルを使ったデータの再構築方法について詳しく解説します。具体的なコード例とその解説、応用例を含めて説明します。
目次
はじめに:ピボットテーブルとは
ピボットテーブルは、データの要約や分析を行う強力なツールです。Excelでもよく用いられますが、Pythonでの操作により、さらに柔軟かつ高度なデータ処理が可能です。
pandasを用いた基本的なピボットテーブルの作成方法
pandasライブラリを用いて、簡単にピボットテーブルを作成する方法を見ていきましょう。
必要なライブラリのインポート
まず、必要なライブラリをインポートします。
import pandas as pd
データフレームの作成
以下のように簡単なデータフレームを作成します。
# データフレームの作成
data = {'Name': ['Alice', 'Bob', 'Charlie', 'Alice', 'Bob', 'Charlie'],
'Subject': ['Math', 'Math', 'Math', 'Science', 'Science', 'Science'],
'Score': [90, 85, 77, 95, 88, 76]}
df = pd.DataFrame(data)
ピボットテーブルの作成
以下のコードでピボットテーブルを作成します。
# ピボットテーブルの作成
pivot_df = df.pivot(index='Name', columns='Subject', values='Score')
応用例1:複数の集計関数を用いる
一つのデータに対して複数の集計関数(平均、合計、最大値など)を用いる場合のコード例です。
# 複数の集計関数を用いる
pivot_df = df.pivot_table(index='Name', columns='Subject', values='Score', aggfunc=['mean', 'sum'])
このコードでは、Nameごと、Subjectごとに、’mean'(平均)と’sum'(合計)の二つの関数を適用しています。
応用例2:マルチインデックスを用いる
マルチインデックスを用いて、さらに高度なピボットテーブルを作成する例です。
# マルチインデックスを用いる
pivot_df = df.pivot_table(index=['Name', 'Subject'], values='Score', aggfunc='mean')
この例では、’Name’と’Subject’の二つのインデックスを用いています。
まとめ
Pythonとpandasを使用して、簡単かつ効率的にデータを再構築する方法について解説しました。基本的な使い方から応用例までを紹介したので、ぜひ参考にしてデータ解析の幅を広げてください。
コメント