top of page

[python]データをどうやって可視化するか

はじめに


kaggleのcompetitionなど、機械学習を行う際にはまず最初にやるのはデータの可視化ではないでしょうか。そしてデータの可視化にはseabornを使うことが多いかと思います。でもグラフにも色々種類があってどれを使うか迷ってしまうことってありませんか?(僕はあります)「どのメソッドを使うとこういうグラフが描けるよ」という説明はたくさんあるのですが、「どういう状況ではこのグラフが良いよ」という説明は少ない気がしました。そこで、ここでは説明変数と目的変数の種類ごとにseabornのどのメソッドを使えばよいのかまとめてみました。


環境は python: 3.6.6 seaborn: 0.10.0


説明変数:離散量(カテゴリ) 目的変数:離散量


まずは説明変数、目的変数ともに離散量(カテゴリ)の場合。seabornのcountplotを用います。目的変数の各カテゴリがそれぞれどれだけ存在するのか描画します。countplotの引数xに説明変数を、hueに目的変数を渡します。データはtitanicです。


import pandas as pd
import seaborn as sns

data=pd.read_csv("train.csv")
sns.countplot(x='Embarked', data=data, hue='Survived')

なお、xとhueを逆にしても良いです(どちらが良いかは好みの問題?)。


sns.countplot(x='Survived', data=data, hue='Embarked')


説明変数:連続量 目的変数:離散量


次に説明変数が連続量、目的変数が離散量の場合。seabornのdistplotで目的変数のカテゴリ毎の説明変数の分布を描画します。


g=sns.FacetGrid(data=data, hue='Survived', size=5)
g.map(sns.distplot, 'Fare')
g.add_legend()

このように引数hueを持たないメソッドで色分けする方法は別記事でも解説しましたのでご参照ください(Seabornでhueを引数に持たないメソッドでも色分けをする方法)。


説明変数:離散量 目的変数:連続量


次に説明変数が離散量、目的変数が連続量の場合。seabornのviolinplotで説明変数のカテゴリ毎の目的変数の分布を描画します。データにはkaggleのHouse Pricesを用います。


train_data=pd.read_csv("train.csv")
sns.violinplot(x="MSZoning", y="SalePrice", data=train_data)

説明変数:連続量 目的変数:連続量


最後に説明変数、目的変数ともに連続量の場合。seabornのjointplotで説明変数と目的変数の相関関係を描画します。


sns.jointplot(x="LotArea", y="SalePrice", data=train_data)

このjointplotは2変数の相関関係とそれぞれの分布が同時に分かる優れものです。



まとめ


以上をまとめると下の表のようになります。



最新記事

すべて表示

[Python]pandas.DataFrameをjsonで出力

概要 pythonでデータ解析を行っている。解析自体はpandasを用いて行い、最終結果はpandas.DataFrameの形式で保持されている。 この結果を他のアプリケーションで利用するため、json形式でファイル出力したい。 やり方 1 pandas.DataFrameをdictionaryに変換 data = df.to_dict(orient='records') 2 ファイルに出力 wi

[Python] 条件付きでフィッティングをする

概要 フィッティングを行いたい場合、pythonならばscipy.optimize.leastsqなどでできます。 しかし、フィッティングを行う場合、フィッティングパラメータに条件を付けたい場合も多々あります。 例えば、下記のようにパラメータa、bは共に正の範囲で最適な値を求める、という感じです。 f(x, a, b)=a*x^2+b (a>0 and b>0) 今回はそんな手法についてご紹介しま

Comments


あなたの買い物をサポートする
アプリ Shop Plan

iphone6.5p2.png

​いつ何を買うかの計画を立てられるアプリです。

google-play-badge.png
Download_on_the_App_Store_Badge_JP_RGB_blk_100317.png

靴を大切にしよう!靴管理アプリ SHOES_KEEP

納品:iPhone6.5①.png

靴の履いた回数、お手入れ回数を管理するアプリです。

google-play-badge.png
Download_on_the_App_Store_Badge_JP_RGB_blk_100317.png

「後で読む」を忘れないアプリ ArticleReminder

気になった​Webサイトを登録し、指定時刻にリマインダを送れるアプリです

google-play-badge.png
Download_on_the_App_Store_Badge_JP_RGB_blk_100317.png
bottom of page