Pythonでピボットテーブルを使ってデータを効率的に再構築する方法

この記事では、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を使用して、簡単かつ効率的にデータを再構築する方法について解説しました。基本的な使い方から応用例までを紹介したので、ぜひ参考にしてデータ解析の幅を広げてください。

コメント

コメントする

目次