【发布时间】:2021-05-18 16:50:21
【问题描述】:
我正在尝试在 python 中使用 ANOVA,但在 rpy2 包的帮助下使用 R 代码。在下面,code stats.lm() 有效,但 stats.aov() 无效
import pandas as pd
from rpy2 import robjects as ro
from rpy2.robjects import pandas2ri
pandas2ri.activate()
from rpy2.robjects.packages import importr
stats = importr('stats')
R = ro.r
df = pd.DataFrame(data={
'subject':['1','2','3','4','5','1','2','3','4','5'],
'group':['1','1','1','2','2','1','1','1','2','2'],
'session':['1','1','1','1','1','2','2','2','2','2'],
'covar':['1', '2', '0', '2', '1', '1', '2', '0', '2', '1'],
'result':[-6.77,6.11,5.67,-7.679,-0.0930,0.948,2.99,6.93,6.30,9.98]
})
rdf = ro.conversion.py2rpy(df)
result = stats.lm('covar ~ group*session', data=rdf)
print(R.summary(result).rx2('coefficients'))
result2 = stats.aov('covar ~ group*session', data=rdf)
我收到此错误。
“错误:$ 运算符对原子向量无效”
提前致谢
【问题讨论】: