19
Pythonを使ったデータ分析 タイタニック号沈没事故では、 どのような人が生き残ったのか? 実際のデータを使って、 データ分析の手法を紹介します。

Pythonを使ったデータ分析...Python(パイソン)とは? 最近では人工知能(AI)や機械学習の ツールとして注目されています。Pythonは、データサイエンティストに

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Pythonを使ったデータ分析 

    タイタニック号沈没事故では、   どのような人が生き残ったのか?   実際のデータを使って、   データ分析の手法を紹介します。

Python(パイソン)とは?

最近では人工知能(AI)や機械学習のツールとして注目されています。

Pythonは、データサイエンティストにとって重要なスキルの1つです。

2

Pythonとはプログラミング言語の1つです。分かりやすい文法、かつ少ないコードで簡単にプログラムを記述できる、世界的にも人気の言語です(完全無料)。

   データサイエンティストに求められるスキル TOP20

1位:Python

大量のデータ処理に困っていませんか?

①メモリ不足で画面がフリーズ。

②大量のデータから必要なデータを 抽出・加工してからグラフ化するので、 分析作業が進まない。

3

例えば、Excelデータの3万件と、システムから出力した    CSVデータの10万件を加工してグラフ化したい。

Excelで処理しようとすると・・

Pythonを使えば10万件のデータでも高速に処理(グラフ化含む)できます。

 ・Pandas(データ分析)

 ・Matplotlib(グラフ化)

 ・Scikit-learn(機械学習)

4

豊富なライブラリで効率的なデータ分析を実現。

5

タイタニック号沈没事故では、どのような人が生き残ったのか?

Pythonを使ったデータ分析の具体例

当時世界最大の客船であったタイタニックは、1912年4月14日の23時40分に氷山に衝突し、乗客2,224人の内1,514人が亡くなりました。

  kaggleで公開されているデータを  使って、詳細を分析していきます。

6

タイタニック号沈没事故のデータ取得1

Kaggle(カグル)は、企業や政府がコンペを開催し、データサイエンティストやエンジニアが予測モデルを提案。順位に入ると、賞金(250万円〜1,000万円)が出る仕組みです。

7

データ分析の前準備2

ステップ.1 Excelファイルのダウンロードステップ.2 Google Colabの環境設定ステップ.3 Google Colabへアップロード

※アップロードの方法

実際に手を動かして、データ分析を体験してみてください。

8

データ分析に必要なライブラリの準備など3

【コピペしてください】pip install japanize-matplotlib

import pandas as pdimport matplotlib as pltimport japanize_matplotlibimport seaborn as snssns.set(font="IPAexGothic")

df=pd.read_excel('titanic.xls')

セルにコードを入力した後、shift+enter(return)で実行

・Google Colabの詳しい操作方法は こちらを確認してください。

9

タイタニック号データ確認①4

【コピペの後、shift+enter(return)で実行してください】  →df.head()

最初の5レコードを表示して、データ内容を確認します。

10

タイタニック号データ確認②5

【コピペの後、shift+enter(return)で実行してください】  →df.info()

年齢を除いて、891データ存在することが分かります。

11

タイタニック号の乗客の割合6

【コピペの後、shift+enter(return)で実行してください】  →sns.countplot('性別',data=df)

男性が多く、子供(16才未満)は少なかった。

12

タイタニック号の客室の割合7

【コピペの後、shift+enter(return)で実行してください】  →sns.countplot('客室',data=df,order=['1等','2等','3等'])

3等客室の乗客が最も多かった(約500人)。

13

タイタニック号の乗客×客室の割合8

【コピペの後、shift+enter(return)で実行してください】  →sns.countplot('客室',data=df,hue='性別',order=['1等','2等','3等'])

3等客室の乗客には男性が多かった(約300人)。

14

タイタニック号の乗客の年齢分布9

【コピペの後、shift+enter(return)で実行してください】  →df['年齢'].hist(bins=100,figsize=(7,5))

20代〜35才までの乗客の割合が高かった。

15

タイタニック号の乗客の年齢×客室分布10【コピペの後、shift+enter(return)で実行してください】

fig=sns.FacetGrid(df,hue='客室',aspect=2)fig.map(sns.kdeplot,'年齢',shade=True)oldset=df['年齢'].max()fig.set(xlim=(0,oldset))fig.add_legend()

1等客室の乗客は高齢者が多い。2・3等客室の乗客は、若者が多かった。

16

タイタニック号の生存率×客室11【コピペの後、shift+enter(return)で実行してください】→sns.factorplot('客室','生存フラグ',data=df,order=['1等','2等','3'],aspect=1.2)

沈没事故の生存率は、3等客室→2等客室→1等客室の順に低かった。

17

タイタニック号の生存率×客室×性別など12【コピペの後、shift+enter(return)で実行してください】→sns.factorplot('客室','生存フラグ',hue='性別',data=df,order=['1等','2等','3等'],aspect=1.2)

亡くなった方は、男性が多く、1・2等客室の女性・子供の生存率は高かった。

沈没のとき、船長が「女性と子ども優先!(Women and children first!)」と命じて避難させたそうです。

男性

女性・子供の生存率は高い(1・2等客室)

18

データ分析の自動実行13・データ分析に使った下記のコードは、こちらで公開しています。

一度作成したコードはボタン一つで何度でも繰り返し実行できます(自動化)

※Excelのアップロードの方法

19

① Pythonを使えば10万件のデータでも高速に処理 (グラフ化含む)できる。

② 数行でグラフ作成できるため、効率的なデータ分析  が可能。

③ 作成したコードは繰り返し利用できる。

「本気でPythonを習得したいけど、学習方法 で悩んでいる」という方は、 --------------------------までメールして ください。相談に応じます。

まとめ14