I am trying to use ANOVA in python but using the R code with the help of the rpy2 package. In below, code stats.lm() works but not 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)
I am getting this error.
"Error: $ operator is invalid for atomic vectors"
Thanks in advance