我的 lapply 函数有问题,我没有找到之前发布的任何匹配问题。我需要对所有列表元素应用排列测试,但是我无法正确设置 lapply。
我正在尝试这个
testperm <- lapply(test-list, FUN=perm.test, formula=(cover ~ group))
函数 perm.test 来自包'exactRankTests' 封面是依赖(数字)变量,组是一个因素。
任何有关如何应用此类功能的提示将不胜感激。詹斯
使用公式时,您通常还需要为data
参数提供值,以便函数知道要使用哪些数据。您的数据集将是列表元素,因此您需要使用匿名函数将它们提供给 perm.test。
在这种情况下尝试:
testperm <- lapply(test.list, FUN=function(x) perm.test(formula=(cover ~ group),data=x))
这是您需要查看的第三个论点。
lapply接受(至少)两个参数,一个列表(包括数据框)和一个对其进行操作的函数FUN:
data(iris)
df0 = iris[1:5,1:3]
fnx = function(v){v^2}
lapply(df0, fnx)
lapply 接受一个可选的第三个参数,该参数必须对应于 FUN 所需的附加参数,而不是lapply 的第一个参数数据结构提供的:
lapply( df0[,1], quantile, probs=1:3/4)