如何在rpy2中使用方差分析比较模型?

2024-05-12 19:21:18 发布

您现在位置:Python中文网/ 问答频道 /正文

在R中,可以使用命令anova(fit1,fit2)比较两个拟合模型,如fit1和fit2

但是,如果我们尝试使用接口Rpy2以类似方式执行此操作,它总是会给出一个错误。单个模型的方差分析,例如方差分析(fit1)可以通过Rpy2计算

使用两个时发生的错误是:

no method for coercing this S4 class into a vector.

因此,我想知道如何解决这个问题,以及如何比较rpy2中的两个安装型号


Tags: no模型命令for错误方式thismethod
1条回答
网友
1楼 · 发布于 2024-05-12 19:21:18

你需要这些标题

 import rpy2.robjects as robjects
 from rpy2.robjects import DataFrame, Formula

然后,这对我起了作用:

formula = Formula('responsev ~ predictorv')
formula2 = Formula('responsev ~ predictorv2')
dataf = DataFrame({'responsev': robjects.IntVector(Y), \
               'predictorv': robjects.IntVector(X),\
                                'predictorv2': robjects.IntVector(X2)})

fit=robjects.r.lm(formula=formula, data=dataf)
fit2=robjects.r.lm(formula=formula2, data=dataf)

a=robjects.r.anova(fit,fit2)

您仍然需要弄清楚如何处理a,但这应该是次要的

希望有帮助

相关问题 更多 >