[Python]Pandasピボットテーブルを使って見やすいグラフを作成!

はじめに

データ分析や可視化において、ピボットテーブルは非常に便利なツールです。特に、Pandasライブラリを使用することで、簡単にピボットテーブルを作成することができます。本記事では、Pandasピボットテーブルを使って見やすいグラフを作成する方法について解説します。

Pandasピボットテーブルとグラフの可視化の重要性

データの可視化は、データ分析の結果をわかりやすく伝えるために非常に重要な要素です。グラフを用いることで、膨大なデータを一目で把握することができます。また、ピボットテーブルは、データの集計や要約を行うのに最適なツールです。ピボットテーブルを作成することで、データの特徴や傾向を可視化することができます。

データの読み込みと前処理

まずは、データを読み込みます。以下のようなデータがあるとします。

import pandas as pd
# データの読み込み
df = pd.read_csv('data.csv')
# データの確認
print(df.head())

データの読み込みが完了したら、データの前処理を行います。必要なデータのみを抽出し、欠損値や異常値を処理することが一般的です。

# データの前処理
# 必要な列のみを抽出
df = df[['Date', 'Category', 'Value']]
# 欠損値の処理
df = df.dropna()
# 異常値の処理
df = df[df['Value'] > 0]
# データの確認
print(df.head())

ピボットテーブルの作成方法

Pandasを使ったピボットテーブルの作成は非常に簡単です。以下のようなコードを実行するだけで、ピボットテーブルを作成することができます。

# ピボットテーブルの作成
pivot_table = df.pivot_table(index='Date', columns='Category', values='Value', aggfunc='sum')
# ピボットテーブルの確認
print(pivot_table.head())

上記のコードでは、Date列を行インデックス、Category列を列インデックス、Value列を値として、ピボットテーブルを作成しています。また、aggfunc='sum'とすることで、同じ日付・カテゴリの値を合計しています。

グラフ作成に必要なライブラリと設定

グラフを作成するには、いくつかのライブラリが必要です。以下のようにライブラリをインポートします。

import matplotlib.pyplot as plt
import seaborn as sns
# グラフの表示設定
sns.set(style='darkgrid')
plt.rcParams['figure.figsize'] = (10, 6)
plt.rcParams['font.size'] = 12

上記のコードでは、matplotlib.pyplotseabornをインポートし、グラフの表示設定を行っています。sns.set(style='darkgrid')はグラフのスタイルを指定し、plt.rcParams['figure.figsize'] = (10, 6)plt.rcParams['font.size'] = 12はグラフのサイズとフォントサイズを調整しています。

ピボットテーブルを用いたグラフの作成例

それでは、ピボットテーブルを用いてグラフを作成してみましょう。以下のようなコードを実行すると、折れ線グラフが表示されます。

# グラフの作成
pivot_table.plot()
# グラフの表示
plt.title('Category Trends Over Time')
plt.xlabel('Date')
plt.ylabel('Value')
plt.legend(loc='upper right')
plt.show()

上記のコードでは、pivot_table.plot()でグラフを作成し、plt.title()plt.xlabel()plt.ylabel()でタイトルや軸ラベルを設定しています。また、plt.legend()で凡例の位置を指定し、plt.show()でグラフを表示しています。

まとめ

本記事では、Pandasピボットテーブルを使って見やすいグラフを作成する方法について解説しました。Pandasのピボットテーブルを使うことで、データの集計や要約を簡単に行うことができます。また、グラフを使うことでデータの特徴や傾向を一目で把握することができます。是非、この記事を参考にして、自分のデータを可視化してみてください。