如何将变量与数据框中的行匹配,并且 select 同一行不同列中的变量?

How to match a variable to a row in a dataframe and select the variable in a different column on the same row?

我有一堆聊天记录,并设法从中提取电子邮件地址并分隔域“@bacon.edu”我有一个与类别名称匹配的域列表。

基本上我想将变量与第 2 列中的一行相匹配,从第 1 列中拉出类别名称。

我应该提一下,目前一切都格式化为因数,但这可能会改变。

在此示例中,d1 = "bacon.edu" 并且名称列表是这样设置的数据框:

d1 = "bacon.edu"

Workplace Name  Email List
Pancake         @bac.edu
Test place      @toe.edu
superworld      @bacon.edu
monkey gym      @aclu.edu
toaster oven    @yoyo.edu

目标是在第 3 行找到培根从第 1 列第 3 行创建一个变量(所以 abc = "superworld"),但我很难找到开始的变量。

我试过:

which(d1, namelist$Email.List)
which(namelist$Email.List == d1)
which(grep
match(d1, namelist$Email.list)
which(grepl("bacon.edu, namelist$Email.List

遗憾的是,我不记得所有错误或它们的来源,但它们包括:

integer(0)
object class not logical
level sets of factors are different.

我感觉删除了失败的尝试。我确信它很简单,我感觉不好问,但我们将不胜感激!

我们可以使用grep

namelistWorkplace Name`[grep(d1, namelist$`Email List`)]