【发布时间】:2020-07-30 01:21:24
【问题描述】:
我正在尝试做与这篇文章类似的事情:Extract rows for the first occurrence of a variable in a data frame,但提取所有出现的事件,而不仅仅是第一个。
这是一个简化的例子: 我有这个名为 toDrop 的数据框
Gene Taxa
123 A
327 B
445 D
557 A
789 E
123 B
557 C
这是我使用 match 的代码,因此只返回第一个匹配项。我在一个循环中运行它,所以为了简单起见在这里修改。
Gene <- c("123", "327", "445", "557", "789", "123", "557")
Taxa <- c("A", "B", "D", "A", "E", "B", "C")
toDrop <- data.frame(Gene, Taxa)
Temp <- list()
geneNameTemp <- "123"
toDrop[match(geneNameTemp, toDrop$Gene), 2] -> Temp
在此示例中,Temp 应返回“A”和“B”的列表 我想我需要像this post 那样使用 lapply 但无法从那个例子中弄清楚。 感谢您的帮助。
【问题讨论】:
标签: r list dataframe match sapply