我正在尝试将最终的correcttot
函数从for循环更改为apply,但在尝试使apply函数获取df
中的基础值时遇到了问题我将把它应用到。
correcttot<-function(v,p,r){
df<-expand.grid(i=1:10,j=1:10,k=1:10,l=1:10,m=2:10,n=2:10,o=1:10))
df$correct3<-0
df$correct3<- apply(df, 1:7, function(x)
percentcorrect((x$i)/10,(x$j)/10,(x$k)*20,(x$l)*20,x$m,x$n,x$o,v,p,r)
)
df$correct3
}
newvec2<-correcttot(v,p,r)
答案 0 :(得分:2)
apply
的第二个参数不是列号,它是维度的编号。您的数据框只有两个维度:行(1)和列(2)。
对于您的分析,请将第二个参数设置为1,表示您已将该函数应用于每一行。