#seabornとは
Pythonのグラフ描画のためのライブラリです。。最も有名なライブラであるmatplotlibのラッパー関数(内包プログラム)という位置づけ。簡単に見た目綺麗なグラフの描画が出来る他、一括での処理などの機能もある程度充実しています。細かく指定して描画するならmatplotlib、簡単に綺麗にならseabornのです。
#ヒストグラム(distplot)
今回のテーマはヒストグラムです。ヒストグラム作成にはdistplot
を使用します。見た目やパラメータの違いは「matplotlib」を用いた下記の記事と比較してみて下さい。
★初心者のためのpandas基礎matplotlibでヒストグラム作成
#準備
まずは、pipでseaborn
のライブラリをインストールして下さい。pip?って方はこちら。
ライブラリをインポートします。seaborn
にsns
という名前をつけてimport
します。
import seaborn as sns
サンプルはタイタニックのデータで試してみます。タイタニックがわからない人は「kaggle タイタニック」で調べて下さい。
pandasでデータフレームを作ります。
dataframe = pd.read_csv('train.csv')
#基本作成
ヒストグラム作成にはdistplot
を使用します。例としてAge(年齢)別のヒストグラムを作成します。
kde
では、密度近似関数の描画の有無をしています。難しいので呪文のように設定して下さい。
rug
をTrueにするとY軸の総計が1になるように正規化されます。難しいので呪文のように設定して下さい。
sns.distplot(dataframe['Age'],kde=False, rug=False)
#binsの設定
bins
を用いて棒の数を設定します。例として10を設定します。
sns.distplot(dataframe['Age'],bins = 10,kde=False, rug=False)
binsの数はいくつがいいの?って疑問を感じ際は、スタージェスの公式というのを調べて下さい。
#(応用)複数を重ねる
あまり用途はないかも知れませんが、重ねるには、2回構文を書くだけです。Sex(性別)で分けてみましょう。
前準備としてデータを分けます。
malelist_m = dataframe['Sex'] == 'male'
malelist_f = dataframe['Sex'] == 'female'
連続で構文を書きます。
sns.distplot(dataframe[malelist_m]['Age'],bins = 10,kde=False, rug=False )
sns.distplot(dataframe[malelist_f]['Age'],bins = 10,kde=False, rug=False )
ラベル等を使いたい場合は「matplotlib」の機能を使う必要があります。
以上です。
#最後に
初心者にもわかるように、Pythonで機械学習を実施する際の必要な知識を簡便に記事としてまとめております。
目次はこちらになりますので、他の記事も参考にして頂けると幸いです。