SlideShare a Scribd company logo
1 of 47
PyData基本のキ
+
解析をするにあたって覚えておくと役立つ
いくつかのこと
かたやなぎ のぶこ
PyLadies Tokyo meetup #6
Python + Data = PyData !
PyLadies Tokyo データ祭!
2015年6月20日(土)
自己紹介
@nobolis
@nobolispy
かたやなぎ のぶこ
農水省系研究機関
研究員(ポスドク)
研究テーマ
生態系の物質循環を予測するモデルを用いた
土壌由来温室効果ガスの定量
土壌表面からのガスを測定 モデルを使って排出量推定 3
大学院生時代 現在
今日の話題に入る前に質問です。
プログラミング初心者?
データ解析はあまりしたことがない?
今日の話題
1. PyDataについての基本的な話
自分が始めたときにこまったこと
2. 解析をするにあたって覚えておくと役立つこと
1. PyDataについての基本的な話
PyData = Python + Data
私の用途:
1. データ処理
– ファイルの分割、欠測値補完、値抽出、etc.
2. 数値計算
– 統計解析、分析、 etc.
PyDataの基本ツール
Python 2.x系/3.x系 お好きな方を。
1. NumPy 多次元配列が扱える。
2. Pandas DataFrameが便利。データベースっぽい使い方ができる。
3. matplotlib データの可視化。グラフ描きツール。
4. IPython ・Ipython notebook・Jupiter
対話型シェルと ブラウザでの操作ツール
5. Sympy 記号計算。方程式を解いたりできる。
6. Scikit-Learn 機械学習
7. SciPy Numpyより高度な科学計算(特殊関数、積分、統計、etc.)
PyLadies Tokyo #3
Python for Beginners
プログラミング初心者・Python初心者
だった私がPythonでデータ解析を
始めようと思ったときに困ったこと
データ解析ツールがいろいろあることはわかったけど、
どうやったら使えるんだろう???
パッケージを入手してimport
ipython notebook demo
Import宣言
https://github.com/nobolis/PyLadiesTokyo_6_demo/blob
/master/PyLadies6_demo_v1.ipynb
パッケージとライブラリ
• パッケージ
– サードパーティ製パッケージ
• Numpy, Scipy, etc.
– Pythonとは別に入手が必要
• ライブラリ
– Python標準ライブラリ
– Pythonにもとから同梱されているライブラリ
• 使うときはいずれもimport宣言して利用
– 組み込み関数・定数・型を除く
参考: Pythonエンジニア養成読本
パッケージの入手(インストール)
Mac・Linux
pip install numpy
pip install scipy
pip install pandas
pip install scikit-learn
pip install matplotlib
pip install ipython
# ipython notebookに必要な異存ライブラリ
pip install pyzmq
pip install jinja2
pip install tornado
パッケージの入手(インストール)
Windows
 pipでインストールしようとするとエラーが出るパッケージあり
 非公式ビルド版/ディストリビューションがおすすめ
非公式ビルド版
Unofficial Windows Binaries for Python Extension Packages
ディストリビューション
Anaconda, Enthought Canopy, Python(x, y), WnPython, Pyzo
どうしたらいい?
2. 解析をするにあたって
覚えておくと役立つこと
解析をするにあたって覚えておくと
役に立つかもしれない5つのこと
1. データには背景がある。
2. データの俯瞰が大切。
3. 統計値は必ずしも正しくない。
4. 数式はこわくない。
5. 解析は楽しい。
2.1 データには背景がある。
2. 解析にあたって覚えておくと役立つこと
大学院生時代 現在
データを集める人
集められたデータを
解析する人
土壌表面からのガスを測定 モデルを使って排出量推定
データを集める仕事と集められたデータを解析することの利点
• データがどうやってとられたのかを知っているため、
データの確からしさについての勘が働く
– はずれ値は
• ほんとうに現象としてあった?
• 計算時のミス?
• 分析時のミス?
• 観測の作業ミス?
覚えておくと役立つこと1
データには背景がある。
• 可能な場合は解析する前にデータがどのようにと
られたか確認しよう
• 確認が出来ない場合は現場の状況をできるだけ
想像してみよう
意味のない
解析の回避
適切な
欠損値補完
2.2 データの俯瞰が大切。
2. 解析にあたって覚えておくと役立つこと
データを集める仕事と集められたデータを解析することの欠点
現場での詳細なプロセス・依存関係について知っ
ているため、詳細な点に気をとられてしまう
俯瞰的な視点を持たずに解析をおこなうと、整
合性のとれない解析をおこなってしまう
覚えておくと役立つこと2
データの俯瞰が大切。
部分を意識しつつ、全体のことを忘れない!
データを俯瞰する
いきなり解析しない
まずざっくりした絵をかいてみる
分布型・データの傾向を確認
外れ値をチェックする
グループ化せずに値を見る
etc.
ipython notebook demo
データの俯瞰
https://github.com/nobolis/PyLadiesTokyo_6_demo/blob
/master/PyLadies6_demo_v1.ipynb
2.3 統計値は必ずしも正しくない。
2. 解析にあたって覚えておくと役立つこと
覚えておくと役立つこと3
統計値は必ずしも正しくない。
解析をすれば統計値自体は得られるが、適用した
手法が不適切ならば、その値が正しいとはいえない。
ipython notebook demo
線形回帰
https://github.com/nobolis/PyLadiesTokyo_6_demo/blob
/master/PyLadies6_demo_v1.ipynb
2.4 数式はこわくない。
2. 解析にあたって覚えておくと役立つこと
覚えておくと役立つこと4
数式はこわくない!
• 数式は簡潔に変数間の関係を表すもの
• 慣れれば文字よりも速やかに書いてあることが理
解できるようになる
• 見た瞬間に「ぎゃーーー」となっても、次の瞬間に
は冷静さを取り戻して一つ一つ理解していこう
ipython notebook demo
数式
https://github.com/nobolis/PyLadiesTokyo_6_demo/blob
/master/PyLadies6_demo_v1.ipynb
2.5 解析は楽しい
2. 解析にあたって覚えておくと役立つこと
覚えておくと役立つこと4
解析は楽しい
• 練習ばかりしてても楽しくない
• 自分が知りたいと思うデータの解析をすれば、
コードを学ぶのも楽しくなる
• 仕事で解析するならばそのデータに興味を持って
解析しよう
• 仕事ではないならば、自分の知りたいことを知る
ために解析しよう
楽しいデータ解析
気象庁 各種データ・資料
http://www.jma.go.jp/jma/menu/menureport.html
国連食糧農業機関 FAO の統計量データベース
http://faostat3.fao.org/home/E
政府統計の総合窓口 e-Stat
http://www.e-stat.go.jp/SG1/estat/eStatTopPortal.do
野球データ
http://shinyorke.hatenablog.com/entry/2015/05/04/022627
@shinyorke
Kaggle
https://www.kaggle.com/
競技プログラミング
http://cocodrips.hateblo.jp/entry/2014/09/16/134759@cocodrips
http://cocodrips.hateblo.jp/entry/2014/09/16/134759
解析をするにあたって覚えておくと
役に立つかもしれない5つのこと
1. データには背景がある。
2. データの俯瞰が大切。
3. 統計値は必ずしも正しくない。
4. 数式はこわくない。
5. 解析は楽しい。
Thank you for your attention !

More Related Content

Viewers also liked

AndroidとArduinoで ロボットを作って思ったこと
AndroidとArduinoで ロボットを作って思ったことAndroidとArduinoで ロボットを作って思ったこと
AndroidとArduinoで ロボットを作って思ったことTakao Sumitomo
 
ログ分析のある生活(概要編)
ログ分析のある生活(概要編)ログ分析のある生活(概要編)
ログ分析のある生活(概要編)Masakazu Kishima
 
PyData: The Next Generation
PyData: The Next GenerationPyData: The Next Generation
PyData: The Next GenerationWes McKinney
 
野球Hack!~Pythonを用いたデータ分析と可視化 #kwskrb #28 2015/9/30
野球Hack!~Pythonを用いたデータ分析と可視化 #kwskrb #28 2015/9/30野球Hack!~Pythonを用いたデータ分析と可視化 #kwskrb #28 2015/9/30
野球Hack!~Pythonを用いたデータ分析と可視化 #kwskrb #28 2015/9/30Shinichi Nakagawa
 
Parse The Web Using Python+Beautiful Soup
Parse The Web Using Python+Beautiful SoupParse The Web Using Python+Beautiful Soup
Parse The Web Using Python+Beautiful SoupJim Chang
 
Learning Python from Data
Learning Python from DataLearning Python from Data
Learning Python from DataMosky Liu
 
野球Hack!(続き)~Pythonを用いた野球サービス構築 #bpstudy
野球Hack!(続き)~Pythonを用いた野球サービス構築 #bpstudy野球Hack!(続き)~Pythonを用いた野球サービス構築 #bpstudy
野球Hack!(続き)~Pythonを用いた野球サービス構築 #bpstudyShinichi Nakagawa
 
C++でCプリプロセッサを作ったり速くしたりしたお話
C++でCプリプロセッサを作ったり速くしたりしたお話C++でCプリプロセッサを作ったり速くしたりしたお話
C++でCプリプロセッサを作ったり速くしたりしたお話Kinuko Yasuda
 
第一回卒研発表会
第一回卒研発表会第一回卒研発表会
第一回卒研発表会syou6162
 
初心者のためのWeb標準技術
初心者のためのWeb標準技術初心者のためのWeb標準技術
初心者のためのWeb標準技術Shogo Sensui
 
大阪PRML読書会#1資料
大阪PRML読書会#1資料大阪PRML読書会#1資料
大阪PRML読書会#1資料Hiromasa Ohashi
 
ログ解析を支えるNoSQLの技術
ログ解析を支えるNoSQLの技術ログ解析を支えるNoSQLの技術
ログ解析を支えるNoSQLの技術Drecom Co., Ltd.
 
MongoDBを用いたソーシャルアプリのログ解析 〜解析基盤構築からフロントUIまで、MongoDBを最大限に活用する〜
MongoDBを用いたソーシャルアプリのログ解析 〜解析基盤構築からフロントUIまで、MongoDBを最大限に活用する〜MongoDBを用いたソーシャルアプリのログ解析 〜解析基盤構築からフロントUIまで、MongoDBを最大限に活用する〜
MongoDBを用いたソーシャルアプリのログ解析 〜解析基盤構築からフロントUIまで、MongoDBを最大限に活用する〜Takahiro Inoue
 
2 5 1.一般化線形モデル色々_CPUE標準化
2 5 1.一般化線形モデル色々_CPUE標準化2 5 1.一般化線形モデル色々_CPUE標準化
2 5 1.一般化線形モデル色々_CPUE標準化logics-of-blue
 
2 1.予測と確率分布
2 1.予測と確率分布2 1.予測と確率分布
2 1.予測と確率分布logics-of-blue
 
サービス改善はログデータ分析から
サービス改善はログデータ分析からサービス改善はログデータ分析から
サービス改善はログデータ分析からKenta Suzuki
 

Viewers also liked (20)

AndroidとArduinoで ロボットを作って思ったこと
AndroidとArduinoで ロボットを作って思ったことAndroidとArduinoで ロボットを作って思ったこと
AndroidとArduinoで ロボットを作って思ったこと
 
ログ分析のある生活(概要編)
ログ分析のある生活(概要編)ログ分析のある生活(概要編)
ログ分析のある生活(概要編)
 
PyData: The Next Generation
PyData: The Next GenerationPyData: The Next Generation
PyData: The Next Generation
 
野球Hack!~Pythonを用いたデータ分析と可視化 #kwskrb #28 2015/9/30
野球Hack!~Pythonを用いたデータ分析と可視化 #kwskrb #28 2015/9/30野球Hack!~Pythonを用いたデータ分析と可視化 #kwskrb #28 2015/9/30
野球Hack!~Pythonを用いたデータ分析と可視化 #kwskrb #28 2015/9/30
 
Parse The Web Using Python+Beautiful Soup
Parse The Web Using Python+Beautiful SoupParse The Web Using Python+Beautiful Soup
Parse The Web Using Python+Beautiful Soup
 
Learning Python from Data
Learning Python from DataLearning Python from Data
Learning Python from Data
 
野球Hack!(続き)~Pythonを用いた野球サービス構築 #bpstudy
野球Hack!(続き)~Pythonを用いた野球サービス構築 #bpstudy野球Hack!(続き)~Pythonを用いた野球サービス構築 #bpstudy
野球Hack!(続き)~Pythonを用いた野球サービス構築 #bpstudy
 
C++でCプリプロセッサを作ったり速くしたりしたお話
C++でCプリプロセッサを作ったり速くしたりしたお話C++でCプリプロセッサを作ったり速くしたりしたお話
C++でCプリプロセッサを作ったり速くしたりしたお話
 
Beautiful woRld
Beautiful woRldBeautiful woRld
Beautiful woRld
 
第一回卒研発表会
第一回卒研発表会第一回卒研発表会
第一回卒研発表会
 
初心者のためのWeb標準技術
初心者のためのWeb標準技術初心者のためのWeb標準技術
初心者のためのWeb標準技術
 
入門機械学習6章
入門機械学習6章入門機械学習6章
入門機械学習6章
 
Prml
PrmlPrml
Prml
 
大阪PRML読書会#1資料
大阪PRML読書会#1資料大阪PRML読書会#1資料
大阪PRML読書会#1資料
 
ログ解析を支えるNoSQLの技術
ログ解析を支えるNoSQLの技術ログ解析を支えるNoSQLの技術
ログ解析を支えるNoSQLの技術
 
機械学習
機械学習機械学習
機械学習
 
MongoDBを用いたソーシャルアプリのログ解析 〜解析基盤構築からフロントUIまで、MongoDBを最大限に活用する〜
MongoDBを用いたソーシャルアプリのログ解析 〜解析基盤構築からフロントUIまで、MongoDBを最大限に活用する〜MongoDBを用いたソーシャルアプリのログ解析 〜解析基盤構築からフロントUIまで、MongoDBを最大限に活用する〜
MongoDBを用いたソーシャルアプリのログ解析 〜解析基盤構築からフロントUIまで、MongoDBを最大限に活用する〜
 
2 5 1.一般化線形モデル色々_CPUE標準化
2 5 1.一般化線形モデル色々_CPUE標準化2 5 1.一般化線形モデル色々_CPUE標準化
2 5 1.一般化線形モデル色々_CPUE標準化
 
2 1.予測と確率分布
2 1.予測と確率分布2 1.予測と確率分布
2 1.予測と確率分布
 
サービス改善はログデータ分析から
サービス改善はログデータ分析からサービス改善はログデータ分析から
サービス改善はログデータ分析から
 

Similar to Pyladies Tokyo meet up #6

Py datameetup1
Py datameetup1Py datameetup1
Py datameetup1shiroyagi
 
Python for Beginners ( #PyLadiesKyoto Meetup )
Python for Beginners ( #PyLadiesKyoto Meetup )Python for Beginners ( #PyLadiesKyoto Meetup )
Python for Beginners ( #PyLadiesKyoto Meetup )Ai Makabi
 
PyData入門(超初心者編)~野球のデータをカジュアルに可視化
PyData入門(超初心者編)~野球のデータをカジュアルに可視化PyData入門(超初心者編)~野球のデータをカジュアルに可視化
PyData入門(超初心者編)~野球のデータをカジュアルに可視化Shinichi Nakagawa
 
S06 t1 python学習奮闘記#4
S06 t1 python学習奮闘記#4S06 t1 python学習奮闘記#4
S06 t1 python学習奮闘記#4Takeshi Akutsu
 
Python入門者の集い #6 Lightning Talk
Python入門者の集い #6 Lightning Talk Python入門者の集い #6 Lightning Talk
Python入門者の集い #6 Lightning Talk Katayanagi Nobuko
 
Python学習奮闘記#07 webapp
Python学習奮闘記#07 webappPython学習奮闘記#07 webapp
Python学習奮闘記#07 webappTakeshi Akutsu
 
Pycon JP 2020 - Todd Perry
Pycon JP 2020 - Todd PerryPycon JP 2020 - Todd Perry
Pycon JP 2020 - Todd PerryTodd Perry
 
Start Python Club 2020年活動報告
Start Python Club 2020年活動報告Start Python Club 2020年活動報告
Start Python Club 2020年活動報告Takeshi Akutsu
 
S03 t1 python_learningdiary#3
S03 t1 python_learningdiary#3S03 t1 python_learningdiary#3
S03 t1 python_learningdiary#3Takeshi Akutsu
 
neural network introduction yapc asia tokyo
neural network introduction yapc asia tokyo neural network introduction yapc asia tokyo
neural network introduction yapc asia tokyo Daichi Morifuji
 
Beginning Python
Beginning PythonBeginning Python
Beginning Pythonsatokencat
 
位置情報にまつわるデータ補間技術
位置情報にまつわるデータ補間技術位置情報にまつわるデータ補間技術
位置情報にまつわるデータ補間技術Hiroaki Sengoku
 
20181117_データ分析プロジェクトの流れを理解する_PDCAとKPIツリー
20181117_データ分析プロジェクトの流れを理解する_PDCAとKPIツリー20181117_データ分析プロジェクトの流れを理解する_PDCAとKPIツリー
20181117_データ分析プロジェクトの流れを理解する_PDCAとKPIツリーNobuaki Oshiro
 
Tokyo r80 beginnerssession1
Tokyo r80 beginnerssession1Tokyo r80 beginnerssession1
Tokyo r80 beginnerssession1kotora_0507
 

Similar to Pyladies Tokyo meet up #6 (17)

Py datameetup1
Py datameetup1Py datameetup1
Py datameetup1
 
Python for Beginners ( #PyLadiesKyoto Meetup )
Python for Beginners ( #PyLadiesKyoto Meetup )Python for Beginners ( #PyLadiesKyoto Meetup )
Python for Beginners ( #PyLadiesKyoto Meetup )
 
PyData入門(超初心者編)~野球のデータをカジュアルに可視化
PyData入門(超初心者編)~野球のデータをカジュアルに可視化PyData入門(超初心者編)~野球のデータをカジュアルに可視化
PyData入門(超初心者編)~野球のデータをカジュアルに可視化
 
S06 t1 python学習奮闘記#4
S06 t1 python学習奮闘記#4S06 t1 python学習奮闘記#4
S06 t1 python学習奮闘記#4
 
Python入門者の集い #6 Lightning Talk
Python入門者の集い #6 Lightning Talk Python入門者の集い #6 Lightning Talk
Python入門者の集い #6 Lightning Talk
 
Python学習奮闘記#07 webapp
Python学習奮闘記#07 webappPython学習奮闘記#07 webapp
Python学習奮闘記#07 webapp
 
Pycon2020
Pycon2020Pycon2020
Pycon2020
 
Pycon JP 2020 - Todd Perry
Pycon JP 2020 - Todd PerryPycon JP 2020 - Todd Perry
Pycon JP 2020 - Todd Perry
 
S08 t0 orientation
S08 t0 orientationS08 t0 orientation
S08 t0 orientation
 
Why python
Why pythonWhy python
Why python
 
Start Python Club 2020年活動報告
Start Python Club 2020年活動報告Start Python Club 2020年活動報告
Start Python Club 2020年活動報告
 
S03 t1 python_learningdiary#3
S03 t1 python_learningdiary#3S03 t1 python_learningdiary#3
S03 t1 python_learningdiary#3
 
neural network introduction yapc asia tokyo
neural network introduction yapc asia tokyo neural network introduction yapc asia tokyo
neural network introduction yapc asia tokyo
 
Beginning Python
Beginning PythonBeginning Python
Beginning Python
 
位置情報にまつわるデータ補間技術
位置情報にまつわるデータ補間技術位置情報にまつわるデータ補間技術
位置情報にまつわるデータ補間技術
 
20181117_データ分析プロジェクトの流れを理解する_PDCAとKPIツリー
20181117_データ分析プロジェクトの流れを理解する_PDCAとKPIツリー20181117_データ分析プロジェクトの流れを理解する_PDCAとKPIツリー
20181117_データ分析プロジェクトの流れを理解する_PDCAとKPIツリー
 
Tokyo r80 beginnerssession1
Tokyo r80 beginnerssession1Tokyo r80 beginnerssession1
Tokyo r80 beginnerssession1
 

Pyladies Tokyo meet up #6

Editor's Notes

  1. こうしたらいいいですよをいう。
  2. ((モデリングと統計解析の話がごっちゃになってる。ここでは「モデリング」について話すのか、「統計」について話すのか、はっきりさせる必要がある))
  3. 例 ゾウの皮膚のきめの荒さ-ゾウの全体像
  4. 企業や研究者がデータを投稿し、世界中の統計家やデータ分析家がその最適モデルを競い合う、予測モデリング及び分析手法関連プラットフォーム