我有两个数据框:
head(数据框一):
A tibble: 6 × 3
Groups: Site [1]
Site Species n
<chr> <chr> <int>
1 BRY1 American Goldfinch 5
2 BRY1 Brown-headed Cowbird 1
3 BRY1 Carolina Wren 1
4 BRY1 Chimney Swift 4
5 BRY1 Common Nighthawk 2
6 BRY1 Common Yellowthroat 1
head(数据框二):
# A tibble: 6 × 3
# Groups: Site [1]
Site Species n
<chr> <chr> <int>
1 BRY1 Chimney Swift 1
2 BRY1 Gray Catbird 1
3 BRY1 House Wren 1
4 BRY1 Indigo Bunting 1
5 BRY1 Northern Cardinal 1
6 BRY1 Warbling Vireo 1
我想按站点查找这两个数据框之间的物种“匹配”数量。两个数据框都有 9 个站点的物种数据(BRY1 - BRY9;每个站点的行数不同),我想计算两个数据框之间每个站点“匹配”的物种数量。更简单地说,如果两个数据框在站点 BRY1 中都有 Chimney Swift 的条目,那么这将是 1 个“匹配”。
我一直在尝试使用 semi_join() 函数,但成功有限。
感谢您的时间和支持!
匹配的物种 <- Data frame One %>% semi_join(数据框二, by = c("站点", "物种")) %>% 计数(站点)
匹配的物种