当缺少因子级别时,您可以通过以下方式使用table:
marks <- c(1,5,3,4,5,6)
table(ordered(marks,levels=1:6))这将返回一个以零频率列出的级别为"2“的表。
如果有一组与“分数”相关的“分数”,并且没有缺失的级别(这里是2),则可以使用tapply生成每个级别的分数总和。
tapply(scores,marks,sum)tapply能适应“缺失”因子水平的情况吗?还是有更好的方法?
发布于 2012-11-21 19:22:39
这里的想法是模拟表函数的行为。
首先,我生成一个分数向量,分数<- sample(1:6)
然后分两步进行:
res <- tapply( ,ordered(marks,levels=1:6),function(x) {sum(x)} )
resis.na(res) <- 0
https://stackoverflow.com/questions/13489941
复制相似问题