PythonでRのlibrary(multcomp)が実行できません。
Pythonのpyperを使用してRを実行するプログラムを作成しています。
2元配置分散分析と共分散分析はうまくいきました。
現在Dunnettの検定に取り組んでおります。
R単体ではうまく結果を得られるのですが、PythonからRを実行すると何も結果が帰ってきません。
RのDunnettの検定では「library(multcomp)」としてmultcompパッケージを呼び出す必要があるのですが、
どうもこの箇所でエラーとなっているようです。
PythonでRのlibrary(multcomp)を実行できる方法を教えてください。
よろしくお願いします。
発生している問題・エラーメッセージ
# dunnettソースファイル dunnett <- function(dataset){ gun = factor(dataset$gun) atai = dataset$atai library(multcomp) #←ここでエラーとなっているようです。 summary(glht(aov(atai~gun),linfct=mcp(gun="Dunnett"))) }
該当のソースコード
# Pythonソース # Python実行パス python_path = 'C:/python' # excelファイルからデータセットの読み込み df = pd.read_excel(python_path + '/dunnett_data.xlsx') # Rを利用するためのインスタンスの生成 r = pyper.R(RCMD="C://Program Files//R//R-4.1.0//bin//x64//R", use_numpy='True', use_pandas='True') # DataFrameをRにおけるデータに格納 r.assign('data', df) # dunnettソースファイルの読み込み r("source('" + python_path + "/dunnett.txt', encoding='utf-8')") # R実行 result = r('dunnett(data)') #←結果がなにも帰ってきません。
試したこと
Pythonから読み込むソースファイルの該当箇所はコメントアウトして、以下のようにPythonに直接記述してもダメでした。
# DataFrameをRにおけるデータに格納 r.assign('data', df) r('library(multcomp)') #←ここにこのように直接記述しましたがダメでした。 # dunnettソースファイルの読み込み r("source('" + python_path + "/dunnett.txt', encoding='utf-8')") # R実行 result = r('dunnett(data)')
補足情報(FW/ツールのバージョンなど)
Python3.9(64-bit)
R x64 4.1.0
あなたの回答
tips
プレビュー