例如,我有一个矩阵:
a <- c(2,3,4,3,3,2,2)
table(a)
输出:
2 3 4
3 3 1
但我想要的输出是:
1 2 3 4
0 3 3 1
所以从示例中,实际上值范围是1到4 .... 由于随机值,列表可能不包含范围中的一个或多个元素 当值范围为1到4时,我希望表中有4个coloumns,其中不存在的值由零填充(0)
答案 0 :(得分:4)
您可以在执行levels
之前将'a'转换为'factor'并指定table
table(factor(a, levels=seq_len(max(a))))
#1 2 3 4
#0 3 3 1
如果您需要也应指定自定义level
。使用评论中的示例
a<- c(2,3,3,3,2,2)
table(factor(a, levels=1:4))
#1 2 3 4
#0 3 3 0