如何计算R中具有特定值的条目

时间:2016-09-21 03:17:08

标签: r counting

假设我有两个向量

x <- c(1, 2, 2, 3, 4, 4, 5, 5, 5) 
y <- c(3, 3, 3, 4, 5, 6, 6, 7, 7)

这些向量中所有数字中的唯一数字是1:7。我知道如果我在R中使用table函数,我可以计算每个向量中唯一条目的数量。例如,如果我将table函数应用于第一个向量,我将得到

table(x)
#x
# 1 2 3 4 5 
# 1 2 1 2 3 

将它应用于第二个向量,我将得到

table(y)
# y
# 3 4 5 6 7 
# 3 1 1 2 2 

如何计算两个向量中所有唯一条目的出现次数?例如,我想产生以下结果:

1 2 3 4 5 6 7
1 2 1 2 3 0 0

表示第一个向量和

1 2 3 4 5 6 7
0 0 3 1 1 2 2

2 个答案:

答案 0 :(得分:2)

首先,生成两个向量中要获取的值的列表

lvl<-unique(c(x,y))

然后在执行表

之前明确地将这些值列为因子的级别
table(factor(x, lvl))
table(factor(y, lvl))

答案 1 :(得分:0)

table(factor(x,unique(union(x,y))))

table(factor(y,unique(union(x,y))))