いっきのblog

技術とか色々

Python(pandas)でざっくりデータを確認する方法

原さんのブログ読んでいたら、データの傾向を見る方法について簡単に書かれていたので真似したみた。

toohsk.hateblo.jp

結論から言うと、確かに傾向を見るのはすごく楽だし、癖にしたい。

要約統計量の確認

実はブログを見る以前に、「ヒストグラム」と「要約統計量」については学んでいた。

kzkohashi.hatenablog.com

ただ、自分が調べてみたいものではなかったせいのもあり、今思うと全然理解できてなかったんだなと悔しみ。。

気を取り直して、今回は色々な著名人のツイートデータを使用する。
pandasにはdescribeと呼ばれる要約統計量をサクッとだせる便利すぎる関数があるのでそれ使う。

import pandas as pd
import csv

chomei_df = pd.read_csv('../data/tyomeijinn.csv')

chomei_df.describe()

f:id:kzkohashi:20180827230050p:plain

favorite_countを見ると、平均が374と多そうに見えるが、分散は2915とかなり散らばっている。中央値(50パーセンタイル順位)は18、75パーセンタイル順位は106と差が大きそうに見える。

ヒストグラムを使ってデータのばらつきなどを確認する

先ほどのfavrote_countを使ってヒストグラムをみて見る。

chomei_df.plot.hist(y=['favorite_count'], bins=50, alpha=0.6, figsize=(12,8), sharex=True)

f:id:kzkohashi:20180827231313p:plain

傾向的にはほぼ先ほどの要約統計量でみた通り、ほとんどのいいねが前半に集まっている。異常な値は他の数値をみづらくするので、75%以内に納めるデータでグラフ化すると

chomei_df.query('favorite_count < 106').plot.hist(y=['favorite_count'], bins=20, alpha=0.6, figsize=(12,8), sharex=True)

f:id:kzkohashi:20180827231941p:plain

だいぶみやすくなって、傾向を追いやすくなった。当たり前だけどいいね数が多くなるほど対象のツイートが減っていいっている。

終わりに

pandasを使って要約統計量やヒストグラムをだした。ざっくりとした値や傾向をみたい時には便利だなと思ったので重宝したい。