Pythonでピボットテーブルを活用する方法

python
記事内に広告が含まれています。

Pythonは、データ分析や処理を効率的に行うための強力なツールです。

この記事では、Pythonを使ってピボットテーブルを作成し、データを効率的に集計・分析する方法を解説します。

DMM WEBCAMP
  • 未経験者向けプログラミングスクール
  • 現役エンジニアがしっかりサポート
  • 卒業後も安心の転職・副業サポート

ピボットテーブルの基本

Pythonでのピボットテーブル作成には、主にpandasライブラリが使われます。

このセクションでは、ピボットテーブルの基本的な作成方法を学びます。

pandasを使ったピボットテーブルの作成

pandasライブラリを使えば、Pythonで簡単にピボットテーブルを作成できます。


    import pandas as pd

    data = {'Category': ['A', 'B', 'A', 'C', 'B'],
            'Sales': [100, 200, 150, 300, 100]}

    df = pd.DataFrame(data)
    pivot_table = df.pivot_table(values='Sales', index='Category', aggfunc='sum')
    print(pivot_table)
    

このコードでは、カテゴリごとの売上を集計しています。

複数の集計関数を使用

複数の集計関数を使ってデータをより詳細に分析することができます。


    pivot_table = df.pivot_table(values='Sales', index='Category', aggfunc=['sum', 'mean'])
    print(pivot_table)
    

この例では、売上の合計と平均をカテゴリ別に表示しています。

ピボットテーブルの行と列を設定

ピボットテーブルの行と列を設定して、さらにデータを整理することができます。


    pivot_table = df.pivot_table(values='Sales', index='Category', columns='Year', aggfunc='sum')
    print(pivot_table)
    

このコードでは、年ごとの売上をカテゴリ別に集計しています。

CodeCamp
  • 現役エンジニアからスキルを学べる
  • 満足度は驚異の97.4%
  • 300社以上のIT企業で研修に導入
  • 毎日9時〜21時まで、無料カウンセリングを開催中!

ピボットテーブルの応用

基本的なピボットテーブルの作成に慣れたら、次は応用テクニックを学びましょう。

ここでは、ピボットテーブルを使った高度なデータ分析方法を紹介します。

データのフィルタリング

フィルタリングを使って、特定の条件に基づいてピボットテーブルを作成できます。


    pivot_table = df.pivot_table(values='Sales', index='Category', aggfunc='sum', margins=True)
    print(pivot_table)
    

この例では、margins=Trueオプションを使用して、全体の合計を表示しています。

欠損値を処理

データに欠損値が含まれている場合、ピボットテーブルで処理が可能です。


    pivot_table = df.pivot_table(values='Sales', index='Category', fill_value=0)
    print(pivot_table)
    

このコードでは、欠損値が0で埋められています。

複数のインデックスを使用したピボットテーブル

複数のインデックスを使用して、データを階層的に整理できます。


    pivot_table = df.pivot_table(values='Sales', index=['Category', 'Region'], aggfunc='sum')
    print(pivot_table)
    

この例では、カテゴリと地域ごとに売上が集計されています。

【リモートワークには必須】
キャリアに合わせてお得に光回線を利用しよう
ドコモ光
開通後、最短一ヶ月で35,000円のキャッシュバック!
 
auひかり
難しい条件一切なしで、最大12,7000円のキャッシュバック!
 
ソフトバンク光
高額キャッシュバックや豪華特典をお届け!

ピボットテーブルの視覚化

ピボットテーブルで集計したデータを視覚化することで、データの傾向をより理解しやすくなります。

ここでは、PythonのMatplotlibSeabornを使った視覚化方法を紹介します。

Matplotlibを使ったグラフの作成

Matplotlibを使えば、ピボットテーブルのデータをグラフにして表示することができます。


    import matplotlib.pyplot as plt

    pivot_table.plot(kind='bar')
    plt.show()
    

このコードでは、ピボットテーブルのデータを棒グラフで表示しています。

Seabornでヒートマップを作成

Seabornライブラリを使って、ピボットテーブルのヒートマップを作成することもできます。


    import seaborn as sns

    sns.heatmap(pivot_table, annot=True, cmap='coolwarm')
    plt.show()
    

この例では、カテゴリ別の売上データを色で視覚化しています。

データの時系列分析

ピボットテーブルを使って、データの時系列分析も行うことができます。


    pivot_table = df.pivot_table(values='Sales', index='Date', aggfunc='sum')
    pivot_table.plot(kind='line')
    plt.show()
    

このコードは、日付ごとの売上の推移を折れ線グラフで表示しています。

プログラミングスクール受講時には教育訓練給付制度を利用することで、受講料の最大80%の給付を受けることが可能です。

ピボットテーブルの実用例

Pythonのピボットテーブルは、業務効率化データ分析に多くの応用が利きます。

ここでは、実際にどのように活用されているかを紹介します。

売上データの分析

ピボットテーブルは、売上データの集計に非常に効果的です。


    sales_data = {'Product': ['A', 'B', 'A', 'C', 'B'], 'Sales': [100, 200, 150, 300, 100], 'Region': ['East', 'West', 'East', 'West', 'East']}
    df = pd.DataFrame(sales_data)
    pivot_table = df.pivot_table(values='Sales', index='Product', columns='Region', aggfunc='sum')
    print(pivot_table)
    

このコードでは、商品ごとに地域別の売上を集計しています。

マーケティングデータの分析

マーケティングキャンペーンの成果をピボットテーブルで分析することも可能です。


    marketing_data = {'Campaign': ['Email', 'Social', 'Ad'], 'Leads': [500, 300, 100], 'Conversion': [50, 25, 10]}
    df = pd.DataFrame(marketing_data)
    pivot_table = df.pivot_table(values='Conversion', index='Campaign', aggfunc='mean')
    print(pivot_table)
    

この例では、キャンペーンごとのコンバージョン率を分析しています。

顧客データの傾向分析

顧客の購買傾向をピボットテーブルで解析し、ターゲット層を絞り込むことができます。


    customer_data = {'AgeGroup': ['18-25', '26-35', '36-45'], 'Purchases': [120, 200, 150]}
    df = pd.DataFrame(customer_data)
    pivot_table = df.pivot_table(values='Purchases', index='AgeGroup', aggfunc='sum')
    print(pivot_table)
    

このコードでは、年齢層ごとの購買傾向を分析しています。

techgym
  • 20000人が学んだpythonの教材
  • 正しい情報をまとめて入手
  • 様々なゲームを作成しながら楽しくpythonが身に付く
  • 自主学習派はこれ一択!

今なら1年間有効なzoomサポート付き!

まとめ

Pythonでピボットテーブルを使うことで、データの集計や分析が容易になります。

pandasを活用して、より効率的なデータ分析を実現しましょう。

【給付金が受けられる】おすすめプログラミングスクール!
  • DMM WEBCAMP
    転職成功率98%&離職率2.3%
    転職できなければ全額返金DMM.comグループならで非公開求人も多数
  • テックアカデミー
    【転職保証】受講生の100%が内定獲得!9割以上が未経験からスタート!LINEヤフー監修&万全サポート
  • Aidemy Premium
    【給付金利用の相談歓迎】AI・データ分析学ぶならAidemy Premium
  • ウズウズカレッジ
    初心者・文系出身者でもOK、IT未経験からの専門的な就業サポート

コメント

タイトルとURLをコピーしました