GIS奮闘記

元GISエンジニアの技術紹介ブログ。主にPythonを使用。

スポンサーリンク

Python での探索的データ解析には pandas-profiling を使おう

さて、本日は pandas-profiling について紹介してみようと思います。機械学習をやっていると避けて通れないのが探索的データ解析ですが、かなり面倒な作業ですよね。ただ、pandas-profilign を使えばすごく簡単に探索的データ解析を行うことができます。

探索的データ解析とは

統計では、探索的データ分析は、データセットを分析して主な特性を要約するアプローチであり、多くの場合、統計グラフィックスやその他のデータ視覚化手法を使用します。(出典:Wikipedia)

pandas-profiling とは

Pandas のデータフレームを読み込んでそのデータに対して探索的データ解析を行ってくれるライブラリです。詳細は以下を参照してください。

github.com

必要なライブラリ

pandas と pandas-profiling をインストールしてください。

環境

Windows10 64bit
Python3.8.5

使用するデータ

2008年から2011年の間のポルトガルの銀行顧客の行動履歴、経済指標と、その顧客が実際に定期預金を申し込んだかどうかのデータを使用します。以下サイトの「 bank-additional-full.csv」を使用します。

archive.ics.uci.edu

開くとこんな感じになっています。このデータですが、「;」が区切り文字になっていたので「,」に変換しました。

f:id:sanvarie:20210508193647p:plain

サンプルコード

import pandas as pd
import pandas_profiling as pdp

df = pd.read_csv('bank-additional-full.csv')
pdp.ProfileReport(df, title="Pandas Profiling Report")

これだけです。めちゃめちゃ簡単ですね。

概要

f:id:sanvarie:20210508202738p:plain

各フィールドの情報

f:id:sanvarie:20210508202811p:plain

f:id:sanvarie:20210508202834p:plain

選択したカラムのヒートマップ

f:id:sanvarie:20210508203700p:plain

f:id:sanvarie:20210508203719p:plain

相関関係

f:id:sanvarie:20210508203152p:plain

サンプルデータ

f:id:sanvarie:20210508203251p:plain

さいごに

pandas-profiling を使うことでこんなに簡単に探索的データ解析ができることがわかりました。ぜひ使ってみてください。本日は以上です。