我编写了一个简单的函数来查找两列的平均值
mean_Response <- function(x, colnum, colnum2){
x[,colnum]+x[,colnum2]) / 2
}
没有什么花哨的。当我把它叫到桌子上时,这种方法很好用,&#34;数学&#34;但失败了lapply
当我直接运行时,我得到了一个很好的结果
maths$mean_answer <- mean_Response(maths, 12,30)
有魅力,但
lapply(maths,mean_Response, 12, 30)
得
Error in x[, colnum] : incorrect number of dimensions
同样,如果我尝试将其作为一个匿名函数写入lapply,它也会失败
mean_Response <- sapply(maths, function(x){x[,12]+x[,30]/2})
我觉得我在我的理解中错过了一些基本的东西,但是我无法弄清楚它是什么,我以为你应该能够以这种方式传递东西。
我在其他问题中看到过这可能是由于与矢量交互的方式,但我并不完全确定我理解为什么它会理解某些领域的功能,而不是其他领域。< / p>
我没有找到解决方案,因为如果有意义的话,更多关于了解sapply如何在这里工作的信息(这是一个学习练习而不是&#39;请为我解决这个问题&#39;运动,虽然有关如何修复它的提示是受欢迎的)