bing
bing

Reputation: 189

Count the occurrence of one vector's values in another vector including non match values in R

I have 2 vectors:

v1 <- c(1, 2, 3, 4, 1, 3, 5, 6, 4)
v2 <- c(1, 2, 3, 4, 5, 6, 7)

I want to calculate the occurrence of values of v1 in v2. The expected result is:

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

I know there is a function can do this:

table(v1[v1 %in% v2])

However, it only list the matched values:

1 2 3 4 5 6 
2 1 2 2 1 1 

How can I show all the values in v2?

Upvotes: 3

Views: 58

Answers (1)

lukeA
lukeA

Reputation: 54237

You can do

table(factor(v1, levels=unique(v2)))
# 1 2 3 4 5 6 7 
# 2 1 2 2 1 1 0 

Upvotes: 10

Related Questions