R-仅当行名称在列表中时才保留数据帧行

use*_*296 2 r

我有一个包含许多列的数据框,但第一列包含名称。

我有一个名字列表。

如果第一列的名称在我的列表中,我只想保留数据框的行。

例如,如果我将此作为我的数据框:

 names     birthday
 Alice     June
 Bob       May
 Eve       December
Run Code Online (Sandbox Code Playgroud)

我把这个作为我的清单:

 list_of_names <- c("Alice","Bob")
Run Code Online (Sandbox Code Playgroud)

我想得到:

 names     birthday
 Alice     June
 Bob       May
Run Code Online (Sandbox Code Playgroud)

我在想一个 for 循环,像这样:

for (i in list_of_names) {
  #if i is in df$names, append to new df?
}
Run Code Online (Sandbox Code Playgroud)

MrF*_*ick 5

%in%运营商将有助于在这里

dd<-data.frame(names=c("Alice","Bob","Eve"), birthday=c("June","May","December"))
subset(dd, names %in% c("Alice","Bob"))
Run Code Online (Sandbox Code Playgroud)