0
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

初心者のためのpandas基礎matplotlibでヒストグラム作成

Last updated at Posted at 2020-07-09

#pandasとは
Pythonにて、構造化データ(テーブル型のデータ)を扱うためのライブラリです。ファイルの読み込みやその後の加工・抽出処理などを簡単に行うことができ(SQL的な感覚で行うことができ)、機械学習などのデータの前処理で必須となるライブラリです。
他項目への目次はこちらになります。

#1.ヒストグラム
ヒストグラムは前準備の段階のデータ確認で多く使用します。今回はmatplotlibとうライブラリを使用します。Excelでやると面倒なヒストグラムが簡単に作成できます。データはおなじみのタイタニックのデータを利用しました。

#1.0.ライブラリインポート&データ読み込み
pandasにpdという名前をつけてimportする。今回は、matplotlib.pyplotもpltという名前をつけてインポート。サンプルデータがタイタニックのもの利用

import pandas as pd
import matplotlib.pyplot as plt
dataframe = pd.read_csv('train.csv')
dataframe.head()

#1.1.ヒストグラム作成
年齢(column「Age」)にてヒストグラム作成します。dropna()にて欠損値をドロップします。

plt.hist(dataframe['Age'].dropna(),bins = 10, range = (0,100),color = 'Blue')
plt.show()

スクリーンショット 2020-07-09 14.29.30.png

bins(表示する瓶の数)、range(データの幅)、clor(色)を指定します。

#1.2.ヒストグラム作成(正規化)
正規化し全体の合計が1になるようにします。

plt.hist(dataframe['Age'].dropna(),bins = 20, range = (0,100),color = 'Blue', normed = 'true')
plt.show()

スクリーンショット 2020-07-09 14.36.59.png

#1.3.タイトル等追加
見やすい様にタイトル等を追加します。

plt.title('Age Histogram', fontsize=14)
plt.xlabel('Age', fontsize=14)
plt.grid(True) 
plt.hist(dataframe['Age'].dropna(),bins = 20, range = (0,100),color = 'Blue')
plt.show()

スクリーンショット 2020-07-09 14.57.21.png

.title(タイトル)、.xlabel(X軸ラベル)、.grid(グリッド)を追加します。

#<応用>積み上げ表示
男性(male)と女性(femal)の内訳表示を積み上げ表示を使って表示します。プロットの準備として、malelist_mとmalelist_fをそれぞれ定義します。

malelist_m = dataframe['Sex'] == 'male'
malelist_f = dataframe['Sex'] == 'female'

plt.title('Age Histogram', fontsize=14)
plt.xlabel('Age', fontsize=14)
plt.grid(True) 
plt.hist([dataframe[malelist_m]['Age'],dataframe[malelist_f]['Age']],bins = 20, range = (0,100), color = ['Blue', 'Red'], label = ['male','femal'], stacked=True)
plt.legend(loc="upper right", fontsize=14) 
plt.show()

スクリーンショット 2020-07-09 15.59.04.png

複数積み上げたい場合は、hist([X1,X2])のように表記します。stackedをTrueにすると積み上げます。(Falseだと併記)labelにて凡例を定義します。.legendにて凡例を追加します。

#最後に
初心者にもわかるように、Pythonで機械学習を実施する際の必要な知識を簡便に記事としてまとめております。
目次はこちらになりますので、他の記事も参考にして頂けると幸いです。

0
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?