通过匹配列表来过滤R中的矩阵

Eli*_*eth 1 merge r filter

我有矩阵:

traits <- matrix(c(1,0,1, 1,0,0, 0,0,0), nrow = 3, ncol=3, byrow=TRUE,
           dimnames = list(c("sp1", "sp2", "sp3"),c("Tr1", "Tr2", "Tr3")))
Run Code Online (Sandbox Code Playgroud)

和一份清单

species <-c("sp1", "sp2")
Run Code Online (Sandbox Code Playgroud)

如何过滤'traits'矩阵,使其只返回匹配即

traits.filtered<-matrix(c(1,0, 1,1, 0,0), nrow = 2, ncol=3, byrow=TRUE,
           dimnames = list(c("sp1", "sp2"),c("Tr1", "Tr2", "Tr3")))
Run Code Online (Sandbox Code Playgroud)

谢谢你,伊丽莎白

shh*_*its 7

traits[row.names(traits)%in%species,]
Run Code Online (Sandbox Code Playgroud)