Slide 1

Slide 1 text

大人のためのPython入門 PyLadies Caravan in Tokyo データ分析編

Slide 2

Slide 2 text

■自己紹介■ ▶ PyLadies Caravan STAFF ▶ お仕事は分析屋さん ▶ お酒が好き、あと焼き鳥も好き ▶ 今年の趣味は海と山のダブルコンボ かなん  @Addition_quince 福岡出身/東京在住

Slide 3

Slide 3 text

※ 今日やること ※ ■Pythonってどんな言語? ■jupyter notebookを使ってみよう ■データ分析のことはじめ   +データの読み込み   +データの形式を把握   +要約統計量の算出   +データの可視化

Slide 4

Slide 4 text

はじめようPython de データ分析★

Slide 5

Slide 5 text

Pythonって、どんな言語? Python とは 汎用プログラミング言語で、その特徴はこんなかんじ。 • オープンソースである • 文法がシンプルであり、コードが少量で済む • Web開発、データ解析(AI)、ゲームといった幅広い分野で使用 • 多彩なライブラリサポートで高度な計算も容易 『 Youtube 』 『 EverNote 』 『 Instagram 』に利用されています。

Slide 6

Slide 6 text

Pythonって、どんな言語? Python の起源 1991年 オランダ人のグイド・ヴァン・ロッサム氏によって開発 イギリスの大ヒットコメディ番組「空飛ぶモンティ・パイソン」からきているとされる。  グイド・ヴァン・ロッサム (出典「wikipedia」)  6年以上前の1989年12月、私はクリスマス前後の週の暇つぶしのため「趣味」のプログ ラミングプロジェクトを探していた。オフィスは閉まっているが、自宅にはホームコン ピュータがあるし、他にすることがなかった。私は最近考えていた新しいスクリプト言語 のインタプリタを書くことにした。それは、ABCからの派生であり、Unix/Cハッカーの注 意をひきつけるかもしれないと考えた。ちょっとしたいたずら心から(『空飛ぶモンティ・パ イソン』の熱烈なファンだったというのも理由の1つ)、プロジェクトの仮称をPythonにし た。 — グイド・ヴァンロッサム、「Programming Python」の序文

Slide 7

Slide 7 text

Python特徴①:シンプルな文法! Python の文法の特徴的な構文ルール「インデント」 ● インデントは、行頭に空白を入れて文字を入れて字下げを行う事 ● 同じインデントのまとまりを1つのブロックと識別 Def hikaku(x):   f x < 10:     print(‘少ない’)     else:     print(‘たくさん’) 1インデントは空白4 つで表されることが 多い

Slide 8

Slide 8 text

Python特徴②:ライブラリが豊富! ライブラリとは、 多彩な計算やデータ加工を可能とする、モジュール(Pythonプログラ ム)群。 <例> ▶ datetime :日付時間処理 ▶ math :数学計算 ▶ numpy :行列演算 ▶ Pandas :データ加工 ▶ Matplotlib :グラフ描画 ▶ scikit-learn :機械学習 ▶ Chainer :深層学習

Slide 9

Slide 9 text

Pythonのバージョン: ▶ Python2(2系)とPython3(3系) ▶ Python2は既(2020年)にサポート終了 ▶ Python3を使いましょう ▶ 最新バージョンは Python3.9.6

Slide 10

Slide 10 text

Jupyter Notebookを使って   データ分析をやってみよう!

Slide 11

Slide 11 text

(参考)エディタ ▶ 実際にPythonでプログラムを書くときは、エディタと呼ばれるソ フトウェアを使うことが多い ▶ みんな自分の好みのエディタをメインで使っています。 ▶ Visual Studio Code (ビジュアルスタジオコード) ▶ PyCharm (パイチャーム) ▶ Atom (アトム) ▶ Notepad++ (ノートパッドプラスプラス) ▶ Sublime (サブライム) ▶ Jupyter Notebook (ジュピターノートブック)

Slide 12

Slide 12 text

(参考)エディタ ▶ PyCharm

Slide 13

Slide 13 text

今回はJupyter Notebookを使用します Jupyter Notebookとは、 ブラウザ形式のテキストエディタ。 ノートブックと呼ばれる形式でプログラムを作成でき、 実行結果を確認しながら作業を進めるためのツールです。 <実行画面> 結果表示 処理記載

Slide 14

Slide 14 text

データ分析で大事なこと データ分析っていうと、 多変量解析とか機械学習とかってすぐやりたくなる でもとても大事なのはデータを理解すること。 そのデータがどんな姿をしているのかを 数値化とグラフ化で泥臭く地道に 解き明かす過程がデータ分析の大半を占めたりする

Slide 15

Slide 15 text

(参考)describe:要約統計量 count :件数 mean :平均 std :標準偏差 min :最小値 25% :25%点(第1四分位数) 50% :50%点(第2四分位数、中央値) 75% :75%点(第3四分位数) max :最大値

Slide 16

Slide 16 text

(参考)平均と中央値(50%点) ・平均は少数の外れ値(異常値)に大きな影響を受ける統計量!! ・平均は全体の中心を表す統計量としてよく利用されるけど、  外れ値を含んだデータでは、外れ値に影響を受けやすいので  注意が必要。 ユーザー スマホゲーム月課金額 A 200円 B 50円 C 300円 D 250円 E 600円 F 5,000円 平均 :1,067円 中央値: 275円

Slide 17

Slide 17 text

(参考)パーセンタイル値 10g 50g 180g 85g 200g 800g 1,000g 2,000g 5,000g 重さ 25%値 50%値 75%値 パーセンタイル値とは、データを昇順に並べた時の位置を表します。 ※百分位で位置を表す場合にパーセンタイル値となる。  データを昇順に並べ等分した時の位置を分位数(quantile)という。  よく使われるのは4等分する四分位数(quartile)である。 【四分位数】 25%値:全データの25%が入る値 第1四分位点(Q1) 50%値:全データの50%が入る値 第2四分位点(中央値)(Q2) 75%値:全データの75%が入る値 第3四分位点(Q3) 30g 中央値:190.0g/平均値:935.5g

Slide 18

Slide 18 text

(参考)箱ひげ図 Ω 25%の データ 25%の データ 25%の データ 25%の データ 最大値 第3四分位 75%点 中央値 50%点 第1四分位 25%点 最小値

Slide 19

Slide 19 text

10g 50g 180g 85g 200g 800g 1,000g 2,000g 5,000g 重さ 25% 50% 75% 30g おさらい 代表値 count 10 mean 935.5 std 1,482.2 min 10 25% 50 50% 190 75% 1,000 max 5,000 ヒストグラム 箱ひげ図 min max mean

Slide 20

Slide 20 text

本日のLET'S TRY

Slide 21

Slide 21 text

sample_data.csv 項目名 数値/カテゴリ 内容 No 数値 通し番号 地方 カテゴリ 8地方名(漢字) chihou カテゴリ 8地方名(アルファベット) 都道府県 カテゴリ 都道府県(漢字) todouhuken カテゴリ 都道府県(アルファベット) area_km2 数値 面積(単位:㎢) population_k 数値 人口(単位:千人) female_k 数値 女性人口(単位:千人) ramen_shop 数値 ラーメン店舗数(単位:軒) sake_l 数値 総アルコール消費量(単位:㍑) sake_l_person 数値 20歳以上1人あたりアルコール消費量(単位:㍑) mcdnald_shop 数値 マクドナルド店舗数(単位:軒) name_sato 数値 苗字が「佐藤」さんの人数(単位:人) source_ml 数値 2人以上の世帯の年間ソース消費量(単位: ml)

Slide 22

Slide 22 text

challenge 問題1: name_satoは、佐藤さんの人数です。その都道府県にどのくらい佐藤さんの 割合が多いのかを確認してみよう。 ※注意:都道府県の人口(population_k)は千人単位です。 問題2: 佐藤さん比率が多ければ多いほど、ラーメン店の数は多くなるのか検証し みよう! 問題3: 自分の出身(もしくは縁のある)都道府県について、データから得られる知見 を探してみましょう。

Slide 23

Slide 23 text

はじめようPython Life★