SlideShare a Scribd company logo
1 of 11
Download to read offline
PypeRで実験と分析を
一本化する
広島大学大学院 教育学研究科	
山根 嵩史	
2016.05.28
Hijiyama.R #4
PythonとR	
 
とは...	
• 強力かつ高速な汎用プログラミング言語
• 無償+オープンソース
• 何でもできるが,心理学の分野では主に実験制御に使われる	
とは...	
• 統計処理を目的とするプログラミング言語	
• 無償+オープンソース	
• データ処理・統計処理に関してはだいたい何でもできる
 データ整形,広範&高度な統計処理,作図 etc…
PypeRとは	
 
• Python   とR  をpypeするから“PypeR”
• 要するに,Python上でRを走らせちゃおうぜ!というパッケージ
• Python で実験制御
+
R でデータ整形・解析 という環境が実現	
実験と分析が  
両方そなわり  
最強に見える
3秒で分かるPypeR	
 
ここにPythonとRの	
  
コードがあるじゃろ?	
 	
  
  (	
  ^ω^)	
  	
  
 ⊃Python R⊂	
こうじゃ	
  
  (	
  ^ω^)	
  	
  
 ⊃pyper.R(“Rcode”)⊂	
これをこうして...	
  	
  
  (	
  ^ω^)	
  	
  
  ≡⊃⊂	
 ≡
(にわかPythonユーザなので)	
  PsychoPy使いまーす	
 
• Python言語をベースとした心理実験用のアプリケーション
• 無償+オープンソース
• 強力なGUIも備えており,直感的に心理実験を組み立てること
ができる
PsychoPy とは...
(にわかPythonユーザなので)	
  PsychoPy使いまーす	
 
• PsychoPyについては
  『PsychoPy講座』 (http://ogwlab.org/?page_id=460)
  『PsychoPy Builderで作る心理学実験』
(http://www.s12600.net/psy/python/ppb/index.html)
 にて詳しく説明されています
 
• なお,PsychoPyにPypeRをインストールするのはちょっと手間
なので
  『【python】PsychoPyからRを使う』 (http://tyamane1969.net/?p=136)
 の記事を参考にしてください
PsychoPy とは...
PsychoPy CoderでRを動かす	
 
import	
  pyper	
  
	
  
r=pyper.R()	
  
	
  
r("dat1<-­‐c(1:10)")	
  
r("dat2<-­‐c(10:20)")	
  
print	
  r("t.test(dat1,dat2)")	
 
⇦ PypeRパッケージをインポート	
⇦ pyper.Rの入力を簡略化	
⇦ “ ”の内部にRのコマンド
  今回は2つのベクトルを作成し
  t検定を実施	
• PsychoPy Coderで以下のコマンドを実行
もうちょっと高度なことをする	
 
import	
  pyper	
  
import	
  numpy	
  as	
  np	
  
	
  
r=pyper.R()	
  
	
  
data1	
  =	
  np.array([[1,2,3,4,5],[0.5,1.5,2.5,3.5,4.5]])	
  
	
  
r.assign("dat",data1)	
  
print	
  r("dat")	
  
	
  
r("setwd('C:/temp')")	
  
	
  
print	
  r("mean(dat[1,])")	
  
print	
  r("mean(dat[2,])")	
  
	
  
r("png('plot1.png')")	
  
r("plot(dat[1,])")	
  
r("dev.off()")	
 
  numpyパッケージを使って
⇦ Python側で行列を作成	
⇦ r.assign( )でRにデータを渡す	
⇦ R側で関数を適用	
• Pythonで作ったデータをRに渡す pyper.R.assign( )
• Rで解析した結果をPythonに返す pyper.R.get( )	
⇦ R側でグラフを作成し,保存
  ※グラフウィンドウが出ないため  
    保存が必要。要検討
こんなこともできます	
 
• PsychoPy Builderで作った実験にRコードを追記して
  ①実験を行う度にデータセットを更新し
  ②検定とグラフの出力を行う     ようにセッティング	
Pythonの実験結果からRTを抽出し,assignでRに渡す	
 
これまでの実験データをRで呼び出し	
  
渡されたデータを追加して更新	
 
検定と結果の出力	
 
Figureの作図と保存
こんなこともできます	
 
• 実験を走らせるだけで検定結果とグラフが出力される	
実
験
す
る
	
 
分
析
まとめ	
 
• 実験と分析が一本化できたら便利だと思った(けど毎回分析を
走らせる必要性は無いかも)
• ロング型の煩雑なデータが出力されるような実験で,すぐにR
にデータを渡して整形・分析したりできる
• Rには高度な統計技術の蓄積があるので,それらをPythonで
使えるのは強み(もちろんlibrary( )やsource( )も使えます)
• 無償で実験から分析までできるのはヤバすぎてヤバい

More Related Content

What's hot

pymcとpystanでベイズ推定してみた話
pymcとpystanでベイズ推定してみた話pymcとpystanでベイズ推定してみた話
pymcとpystanでベイズ推定してみた話Classi.corp
 
Stanコードの書き方 中級編
Stanコードの書き方 中級編Stanコードの書き方 中級編
Stanコードの書き方 中級編Hiroshi Shimizu
 
機械学習のためのベイズ最適化入門
機械学習のためのベイズ最適化入門機械学習のためのベイズ最適化入門
機械学習のためのベイズ最適化入門hoxo_m
 
機械学習モデルの判断根拠の説明
機械学習モデルの判断根拠の説明機械学習モデルの判断根拠の説明
機械学習モデルの判断根拠の説明Satoshi Hara
 
Skip Connection まとめ(Neural Network)
Skip Connection まとめ(Neural Network)Skip Connection まとめ(Neural Network)
Skip Connection まとめ(Neural Network)Yamato OKAMOTO
 
(実験心理学徒だけど)一般化線形混合モデルを使ってみた
(実験心理学徒だけど)一般化線形混合モデルを使ってみた(実験心理学徒だけど)一般化線形混合モデルを使ってみた
(実験心理学徒だけど)一般化線形混合モデルを使ってみたTakashi Yamane
 
Rによるやさしい統計学第20章「検定力分析によるサンプルサイズの決定」
Rによるやさしい統計学第20章「検定力分析によるサンプルサイズの決定」Rによるやさしい統計学第20章「検定力分析によるサンプルサイズの決定」
Rによるやさしい統計学第20章「検定力分析によるサンプルサイズの決定」Takashi J OZAKI
 
ブラックボックス最適化とその応用
ブラックボックス最適化とその応用ブラックボックス最適化とその応用
ブラックボックス最適化とその応用gree_tech
 
ようやく分かった!最尤推定とベイズ推定
ようやく分かった!最尤推定とベイズ推定ようやく分かった!最尤推定とベイズ推定
ようやく分かった!最尤推定とベイズ推定Akira Masuda
 
ベルヌーイ分布からベータ分布までを関係づける
ベルヌーイ分布からベータ分布までを関係づけるベルヌーイ分布からベータ分布までを関係づける
ベルヌーイ分布からベータ分布までを関係づけるitoyan110
 
【DL輪読会】Implicit Behavioral Cloning
【DL輪読会】Implicit Behavioral Cloning【DL輪読会】Implicit Behavioral Cloning
【DL輪読会】Implicit Behavioral CloningDeep Learning JP
 
Deep Learning Lab 異常検知入門
Deep Learning Lab 異常検知入門Deep Learning Lab 異常検知入門
Deep Learning Lab 異常検知入門Shohei Hido
 
心理学におけるオープンサイエンス入門(OSF&PsyArXiv編)
心理学におけるオープンサイエンス入門(OSF&PsyArXiv編)心理学におけるオープンサイエンス入門(OSF&PsyArXiv編)
心理学におけるオープンサイエンス入門(OSF&PsyArXiv編)daiki hojo
 
5分でわかるかもしれないglmnet
5分でわかるかもしれないglmnet5分でわかるかもしれないglmnet
5分でわかるかもしれないglmnetNagi Teramo
 
機械学習モデルの判断根拠の説明(Ver.2)
機械学習モデルの判断根拠の説明(Ver.2)機械学習モデルの判断根拠の説明(Ver.2)
機械学習モデルの判断根拠の説明(Ver.2)Satoshi Hara
 
ベイズ統計学の概論的紹介
ベイズ統計学の概論的紹介ベイズ統計学の概論的紹介
ベイズ統計学の概論的紹介Naoki Hayashi
 
Rで因子分析 商用ソフトで実行できない因子分析のあれこれ
Rで因子分析 商用ソフトで実行できない因子分析のあれこれRで因子分析 商用ソフトで実行できない因子分析のあれこれ
Rで因子分析 商用ソフトで実行できない因子分析のあれこれHiroshi Shimizu
 
DSIRNLP#1 ランキング学習ことはじめ
DSIRNLP#1 ランキング学習ことはじめDSIRNLP#1 ランキング学習ことはじめ
DSIRNLP#1 ランキング学習ことはじめsleepy_yoshi
 

What's hot (20)

pymcとpystanでベイズ推定してみた話
pymcとpystanでベイズ推定してみた話pymcとpystanでベイズ推定してみた話
pymcとpystanでベイズ推定してみた話
 
Stanコードの書き方 中級編
Stanコードの書き方 中級編Stanコードの書き方 中級編
Stanコードの書き方 中級編
 
機械学習のためのベイズ最適化入門
機械学習のためのベイズ最適化入門機械学習のためのベイズ最適化入門
機械学習のためのベイズ最適化入門
 
機械学習モデルの判断根拠の説明
機械学習モデルの判断根拠の説明機械学習モデルの判断根拠の説明
機械学習モデルの判断根拠の説明
 
Skip Connection まとめ(Neural Network)
Skip Connection まとめ(Neural Network)Skip Connection まとめ(Neural Network)
Skip Connection まとめ(Neural Network)
 
ANOVA君とanovatan
ANOVA君とanovatanANOVA君とanovatan
ANOVA君とanovatan
 
(実験心理学徒だけど)一般化線形混合モデルを使ってみた
(実験心理学徒だけど)一般化線形混合モデルを使ってみた(実験心理学徒だけど)一般化線形混合モデルを使ってみた
(実験心理学徒だけど)一般化線形混合モデルを使ってみた
 
Stan超初心者入門
Stan超初心者入門Stan超初心者入門
Stan超初心者入門
 
Rによるやさしい統計学第20章「検定力分析によるサンプルサイズの決定」
Rによるやさしい統計学第20章「検定力分析によるサンプルサイズの決定」Rによるやさしい統計学第20章「検定力分析によるサンプルサイズの決定」
Rによるやさしい統計学第20章「検定力分析によるサンプルサイズの決定」
 
ブラックボックス最適化とその応用
ブラックボックス最適化とその応用ブラックボックス最適化とその応用
ブラックボックス最適化とその応用
 
ようやく分かった!最尤推定とベイズ推定
ようやく分かった!最尤推定とベイズ推定ようやく分かった!最尤推定とベイズ推定
ようやく分かった!最尤推定とベイズ推定
 
ベルヌーイ分布からベータ分布までを関係づける
ベルヌーイ分布からベータ分布までを関係づけるベルヌーイ分布からベータ分布までを関係づける
ベルヌーイ分布からベータ分布までを関係づける
 
【DL輪読会】Implicit Behavioral Cloning
【DL輪読会】Implicit Behavioral Cloning【DL輪読会】Implicit Behavioral Cloning
【DL輪読会】Implicit Behavioral Cloning
 
Deep Learning Lab 異常検知入門
Deep Learning Lab 異常検知入門Deep Learning Lab 異常検知入門
Deep Learning Lab 異常検知入門
 
心理学におけるオープンサイエンス入門(OSF&PsyArXiv編)
心理学におけるオープンサイエンス入門(OSF&PsyArXiv編)心理学におけるオープンサイエンス入門(OSF&PsyArXiv編)
心理学におけるオープンサイエンス入門(OSF&PsyArXiv編)
 
5分でわかるかもしれないglmnet
5分でわかるかもしれないglmnet5分でわかるかもしれないglmnet
5分でわかるかもしれないglmnet
 
機械学習モデルの判断根拠の説明(Ver.2)
機械学習モデルの判断根拠の説明(Ver.2)機械学習モデルの判断根拠の説明(Ver.2)
機械学習モデルの判断根拠の説明(Ver.2)
 
ベイズ統計学の概論的紹介
ベイズ統計学の概論的紹介ベイズ統計学の概論的紹介
ベイズ統計学の概論的紹介
 
Rで因子分析 商用ソフトで実行できない因子分析のあれこれ
Rで因子分析 商用ソフトで実行できない因子分析のあれこれRで因子分析 商用ソフトで実行できない因子分析のあれこれ
Rで因子分析 商用ソフトで実行できない因子分析のあれこれ
 
DSIRNLP#1 ランキング学習ことはじめ
DSIRNLP#1 ランキング学習ことはじめDSIRNLP#1 ランキング学習ことはじめ
DSIRNLP#1 ランキング学習ことはじめ
 

Viewers also liked

がんばろう!はじめてのDnn!
がんばろう!はじめてのDnn!がんばろう!はじめてのDnn!
がんばろう!はじめてのDnn!Shushi Namba
 
ggplot2用例集 入門編
ggplot2用例集 入門編ggplot2用例集 入門編
ggplot2用例集 入門編nocchi_airport
 
Mendeleyで簡単! 論文管理
Mendeleyで簡単! 論文管理Mendeleyで簡単! 論文管理
Mendeleyで簡単! 論文管理Takashi Yamane
 
要因計画データに対するベイズ推定アプローチ
要因計画データに対するベイズ推定アプローチ要因計画データに対するベイズ推定アプローチ
要因計画データに対するベイズ推定アプローチTakashi Yamane
 
信号検出理論 (『実践ベイズモデリング』15章)
信号検出理論 (『実践ベイズモデリング』15章)信号検出理論 (『実践ベイズモデリング』15章)
信号検出理論 (『実践ベイズモデリング』15章)Takashi Yamane
 

Viewers also liked (6)

がんばろう!はじめてのDnn!
がんばろう!はじめてのDnn!がんばろう!はじめてのDnn!
がんばろう!はじめてのDnn!
 
ggplot2用例集 入門編
ggplot2用例集 入門編ggplot2用例集 入門編
ggplot2用例集 入門編
 
Mendeleyで簡単! 論文管理
Mendeleyで簡単! 論文管理Mendeleyで簡単! 論文管理
Mendeleyで簡単! 論文管理
 
要因計画データに対するベイズ推定アプローチ
要因計画データに対するベイズ推定アプローチ要因計画データに対するベイズ推定アプローチ
要因計画データに対するベイズ推定アプローチ
 
信号検出理論 (『実践ベイズモデリング』15章)
信号検出理論 (『実践ベイズモデリング』15章)信号検出理論 (『実践ベイズモデリング』15章)
信号検出理論 (『実践ベイズモデリング』15章)
 
Osaka.stan#4 chap8
Osaka.stan#4 chap8Osaka.stan#4 chap8
Osaka.stan#4 chap8
 

Similar to PypeRで実験と分析を一本化する

Rブートキャンプ
RブートキャンプRブートキャンプ
RブートキャンプKosuke Sato
 
S06 t1 python学習奮闘記#4
S06 t1 python学習奮闘記#4S06 t1 python学習奮闘記#4
S06 t1 python学習奮闘記#4Takeshi Akutsu
 
TokyoR101_BeginnersSession1.pdf
TokyoR101_BeginnersSession1.pdfTokyoR101_BeginnersSession1.pdf
TokyoR101_BeginnersSession1.pdfkotora_0507
 
弁理士が知っておきたいPython①
弁理士が知っておきたいPython①弁理士が知っておきたいPython①
弁理士が知っておきたいPython①Tajima Ryosuke
 
LLoT ランゲージアップデート Python
LLoT ランゲージアップデート PythonLLoT ランゲージアップデート Python
LLoT ランゲージアップデート Pythonhirokiky
 
PyPy 紹介
PyPy 紹介PyPy 紹介
PyPy 紹介shoma h
 
PythonとRによるデータ分析環境の構築と機械学習によるデータ認識 第3版
PythonとRによるデータ分析環境の構築と機械学習によるデータ認識 第3版PythonとRによるデータ分析環境の構築と機械学習によるデータ認識 第3版
PythonとRによるデータ分析環境の構築と機械学習によるデータ認識 第3版Katsuhiro Morishita
 
統計用言語Rの使い方
統計用言語Rの使い方統計用言語Rの使い方
統計用言語Rの使い方Ak Ok
 
Pythonによる画像処理について
Pythonによる画像処理についてPythonによる画像処理について
Pythonによる画像処理についてYasutomo Kawanishi
 
PythonとRによるデータ分析環境の構築と機械学習によるデータ認識
PythonとRによるデータ分析環境の構築と機械学習によるデータ認識PythonとRによるデータ分析環境の構築と機械学習によるデータ認識
PythonとRによるデータ分析環境の構築と機械学習によるデータ認識Katsuhiro Morishita
 
Rの導入とRStudio事始め(改訂版)
Rの導入とRStudio事始め(改訂版)Rの導入とRStudio事始め(改訂版)
Rの導入とRStudio事始め(改訂版)Takashi Yamane
 
Rはいいぞ!むしろなぜ使わないのか!!
Rはいいぞ!むしろなぜ使わないのか!!Rはいいぞ!むしろなぜ使わないのか!!
Rはいいぞ!むしろなぜ使わないのか!!Shushi Namba
 
プログラマーとの出会い - Hello, Programmer! at PyCon Kyushu 2022
プログラマーとの出会い - Hello, Programmer! at PyCon Kyushu 2022プログラマーとの出会い - Hello, Programmer! at PyCon Kyushu 2022
プログラマーとの出会い - Hello, Programmer! at PyCon Kyushu 2022Takayuki Shimizukawa
 

Similar to PypeRで実験と分析を一本化する (20)

Rブートキャンプ
RブートキャンプRブートキャンプ
Rブートキャンプ
 
Rでダイエット
RでダイエットRでダイエット
Rでダイエット
 
S06 t1 python学習奮闘記#4
S06 t1 python学習奮闘記#4S06 t1 python学習奮闘記#4
S06 t1 python学習奮闘記#4
 
TokyoR101_BeginnersSession1.pdf
TokyoR101_BeginnersSession1.pdfTokyoR101_BeginnersSession1.pdf
TokyoR101_BeginnersSession1.pdf
 
弁理士が知っておきたいPython①
弁理士が知っておきたいPython①弁理士が知っておきたいPython①
弁理士が知っておきたいPython①
 
LLoT ランゲージアップデート Python
LLoT ランゲージアップデート PythonLLoT ランゲージアップデート Python
LLoT ランゲージアップデート Python
 
PyPy 紹介
PyPy 紹介PyPy 紹介
PyPy 紹介
 
PythonとRによるデータ分析環境の構築と機械学習によるデータ認識 第3版
PythonとRによるデータ分析環境の構築と機械学習によるデータ認識 第3版PythonとRによるデータ分析環境の構築と機械学習によるデータ認識 第3版
PythonとRによるデータ分析環境の構築と機械学習によるデータ認識 第3版
 
Why python
Why pythonWhy python
Why python
 
R超入門
R超入門R超入門
R超入門
 
統計用言語Rの使い方
統計用言語Rの使い方統計用言語Rの使い方
統計用言語Rの使い方
 
Why python
Why pythonWhy python
Why python
 
S08 t0 orientation
S08 t0 orientationS08 t0 orientation
S08 t0 orientation
 
Pythonによる画像処理について
Pythonによる画像処理についてPythonによる画像処理について
Pythonによる画像処理について
 
PythonとRによるデータ分析環境の構築と機械学習によるデータ認識
PythonとRによるデータ分析環境の構築と機械学習によるデータ認識PythonとRによるデータ分析環境の構築と機械学習によるデータ認識
PythonとRによるデータ分析環境の構築と機械学習によるデータ認識
 
Rの導入とRStudio事始め(改訂版)
Rの導入とRStudio事始め(改訂版)Rの導入とRStudio事始め(改訂版)
Rの導入とRStudio事始め(改訂版)
 
Rはいいぞ!むしろなぜ使わないのか!!
Rはいいぞ!むしろなぜ使わないのか!!Rはいいぞ!むしろなぜ使わないのか!!
Rはいいぞ!むしろなぜ使わないのか!!
 
Django_fukuoka
Django_fukuokaDjango_fukuoka
Django_fukuoka
 
プログラマーとの出会い - Hello, Programmer! at PyCon Kyushu 2022
プログラマーとの出会い - Hello, Programmer! at PyCon Kyushu 2022プログラマーとの出会い - Hello, Programmer! at PyCon Kyushu 2022
プログラマーとの出会い - Hello, Programmer! at PyCon Kyushu 2022
 
Django_Fukuoka
Django_FukuokaDjango_Fukuoka
Django_Fukuoka
 

More from Takashi Yamane

ベイズモデリングによる第2種信号検出モデルの表現
ベイズモデリングによる第2種信号検出モデルの表現ベイズモデリングによる第2種信号検出モデルの表現
ベイズモデリングによる第2種信号検出モデルの表現Takashi Yamane
 
DiagrammeRと仲良くなった話ーグラフィカルモデルのためのDiagrammeR速習ー
DiagrammeRと仲良くなった話ーグラフィカルモデルのためのDiagrammeR速習ーDiagrammeRと仲良くなった話ーグラフィカルモデルのためのDiagrammeR速習ー
DiagrammeRと仲良くなった話ーグラフィカルモデルのためのDiagrammeR速習ーTakashi Yamane
 
ガンマ分布 @魁!!広島ベイズ塾
ガンマ分布 @魁!!広島ベイズ塾ガンマ分布 @魁!!広島ベイズ塾
ガンマ分布 @魁!!広島ベイズ塾Takashi Yamane
 
MCMCによる回帰分析@ベイズセミナー
MCMCによる回帰分析@ベイズセミナーMCMCによる回帰分析@ベイズセミナー
MCMCによる回帰分析@ベイズセミナーTakashi Yamane
 
第一回広島ベイズ塾・最小二乗法
第一回広島ベイズ塾・最小二乗法第一回広島ベイズ塾・最小二乗法
第一回広島ベイズ塾・最小二乗法Takashi Yamane
 

More from Takashi Yamane (6)

ベイズモデリングによる第2種信号検出モデルの表現
ベイズモデリングによる第2種信号検出モデルの表現ベイズモデリングによる第2種信号検出モデルの表現
ベイズモデリングによる第2種信号検出モデルの表現
 
DiagrammeRと仲良くなった話ーグラフィカルモデルのためのDiagrammeR速習ー
DiagrammeRと仲良くなった話ーグラフィカルモデルのためのDiagrammeR速習ーDiagrammeRと仲良くなった話ーグラフィカルモデルのためのDiagrammeR速習ー
DiagrammeRと仲良くなった話ーグラフィカルモデルのためのDiagrammeR速習ー
 
ガンマ分布 @魁!!広島ベイズ塾
ガンマ分布 @魁!!広島ベイズ塾ガンマ分布 @魁!!広島ベイズ塾
ガンマ分布 @魁!!広島ベイズ塾
 
MCMCによる回帰分析@ベイズセミナー
MCMCによる回帰分析@ベイズセミナーMCMCによる回帰分析@ベイズセミナー
MCMCによる回帰分析@ベイズセミナー
 
第一回広島ベイズ塾・最小二乗法
第一回広島ベイズ塾・最小二乗法第一回広島ベイズ塾・最小二乗法
第一回広島ベイズ塾・最小二乗法
 
Rstudio事始め
Rstudio事始めRstudio事始め
Rstudio事始め
 

PypeRで実験と分析を一本化する