R具有部分匹配row.names的此功能。例如:
> d <- data.frame(a=1:2, row.names = c('1', '711'))
> d
a
1 1
711 2
部分匹配:
> d['7',]
[1] 2
但如果我只需要完全匹配怎么办?所以我希望NA
行不匹配。
我不想使用%in%
运算符,因为它不保留顺序而不返回空行。
> d[rownames(d) %in% c('711', '9', '1'),]
[1] 1 2
答案 0 :(得分:0)
使用match
功能。
> d[match(c('711', '9', '1'), rownames(d)),]
[1] 2 NA 1
这正是我所需要的。