DISTRICT 37

なにか

pandas_profilingという罪

また一つ罪なツールが出回ってしまったようだ

pandas_profiling

データのサマリーは非常に面倒な作業だ。

import pandas as pd
import seaborn as sns

iris = sns.load_dataset('iris')

まずは何かしらのデータがあったとして(今回も例によってiris)この内容をとりあえず俯瞰したいときにはdescribe()を駆使して何とか見ていった。

こんなことしたり

iris.describe()

#  sepal_length    sepal_width     petal_length    petal_width
# count    150.000000  150.000000  150.000000  150.000000
# mean     5.843333    3.057333    3.758000    1.199333
# std  0.828066    0.435866    1.765298    0.762238
# min  4.300000    2.000000    1.000000    0.100000 
# 25%  5.100000    2.800000    1.600000    0.300000
# 50%  5.800000    3.000000    4.350000    1.300000
# 75%  6.400000    3.300000    5.100000    1.800000
# max  7.900000    4.400000    6.900000    2.500000

こんなことして

sns.pairplot(iris, hue="species")

こんなのを見たりと f:id:dragstarclassic:20190508110824p:plain

ですが、データのサマリーを一撃でやってくれる罪なライブラリが出てきてしまったのです。その名も「pandas-progilinig」です

使い方

まずはインストール

pip install pandas-profiling

無事にインストールできたらこの2行で完了

import pandas_profiling as pp
pp.ProfileReport(iris)

そうするとサマリーされた情報がモリモリ出てくる

  • OverView f:id:dragstarclassic:20190508112055p:plain

  • Variables

タブを切り替えるとデータの特徴などが表示される

f:id:dragstarclassic:20190508112211p:plain f:id:dragstarclassic:20190508112231p:plain f:id:dragstarclassic:20190508112258p:plain f:id:dragstarclassic:20190508112319p:plain

  • Correlation

ピアソンとスピアマンの両方を出してくれる f:id:dragstarclassic:20190508112523p:plain

  • Sample

最後に実データを表示 f:id:dragstarclassic:20190508113622p:plain

まとめ

非常に便利なツールですが、これに甘えるとデータをよく見るという事を忘れがちになります。ちなみにGoogleのCollaboratoryならpipによるインストール不要で使える。それと、Collaboratoryだとちょっと違った見え方をする。あっちにはpairplotとかも小さく出てたけど、なんかバージョンが違うのかな?