からjupyterのrpy2
まで、R
オブジェクトを使用してPythonから直接データをプロットすることができます。どうすればPythonでpar(mfrow=c(1,2)
を設定できますか?pythonでmfrow/mfcolを設定する方法
例えば、私は自動的にPythonから可変サイズの行列を送り、rpy2
を使ってそれを(他の統計解析の中でも)プロットしたいと思います。しかし、単一のボックスプロットをプロットするのではなく、それらのすべてを出力したい。
ここではいくつかのサンプルコードが
import rpy2.ipython
import rpy2.robjects as ro
import scipy as sp
import re #python for regex
from rpy2.robjects.packages import importr
rpy2.robjects.numpy2ri.activate()
%load_ext rpy2.ipython
%R
test=[[1,3,2],[6,5,7,8,9]]
def funtoanalyze(grouparray):
a={}
data=numpy.array(test)
for ig in range(len(grouparray)):
key=grouparray[ig]
value=data[ig]
a[key]=value
next
rbox=ro.r('boxplot')
for gro in a:
datar=a[gro]
ro.r('dev.new()')
rbox(ro.FloatVector(datar[:]),xlab="",main=gro)
return
funtoanalyze(["group33","group2"]) #only plots last group
@lgautierにお返事ありがとうございます。確かに、私はジュピターを使用しています。私は '%% R'を避けることを望んでいました。なぜなら、私はまだデータの入出力方法を学んでいるからです。 robjectsを使ってそれを行う方法が分かっていれば、答えに追加することができればうれしいです(ただし、 '%% R'部分は削除しないでください) – Sosi
ノートブックに'%% %R'。 – lgautier
ありがとうございます@ lgautier! – Sosi