我需要根据数据框中的名称对行进行子集化。我尝试了以下代码,但它不起作用。
Name plot
12 25
22 23
14 12
16 22
23 54
DF.new <- subset(DF, rownames== c("12" , "16"))
使用 dplyr
:
library(dplyr)
DF <- data.frame(row.names=c("12a", "22a", "13a"), Name=c("12","22","13"), plot=c(25,18,9))
如果您想按数据框列“Name”进行筛选,则:
DF.new -> DF %>% filter(Name %in% c("12", "16"))
如果您想按df的实际row.names
进行过滤,则:
DF.new -> DF %>% filter(row.names(DF) %in% c("12a","13a"))
或者,使用基本的R语言:
DF.new -> DF[DF$Name %in% c("12","13"), ]
或者
DF.new -> DF[row.names(DF) %in% c("12a","13a"),]
DF$Name
can be justName
- G. Grothendieck