我有困难理解
感谢您的选择。
tapply
函数在FUN
参数为null
时的作用。
文档中写到:
例如,文档中以下示例是做什么用的?如果 FUN 为 NULL,则 tapply 返回一个向量,该向量可用于下标多维数组 tapply 正常生成。
ind <- list(c(1, 2, 2), c("A", "A", "B"))
tapply(1:3, ind) #-> the split vector
我不理解这些结果:
[1] 1 2 4
感谢您的选择。
interaction(ind)
函数生成所有"factor" "levels"的组合;在您的示例中,输出结果对应于levels(interaction(ind))[c(1, 2, 4)]
按照"INDEX"参数进行匹配的"X"。另请参考tapply(1:5, list(c(1, 2, 2, 2, 1), c("A", "A", "B", "B", "A")))
可以更清晰地看到,它将"X"按"INDEX"分组。 - alexis_lazix <- tapply(X, INDEX)
的结果不依赖于X
,只依赖于INDEX
。特别地,如果INDEX
是一个列表,则ix
等于as.integer(do.call(interaction, INDEX))
。 - G. Grothendieck