【发布时间】:2016-08-25 01:10:39
【问题描述】:
我想基于两列 ColA 和 ColB(下图)创建一个大型数据框的子集。对于 ColA 中的每个变量(例如 A、B、C ...),我想提取与 ColB 中第一个变量的每次出现相对应的行。因此DF1:
ColA ColB ColC
A Red 7thing
A Red OneBot
A Blue BotOne
B Green Thing7
B Green Twosies
B Green Square
B Yellow Circle
B Yellow Polygon
B Purple Triangle
B White Octagon
C Orange Cube
C Black Line
将成为 DF2:
ColA ColB ColC
A Red 7thing
A Red OneBot
B Green Thing7
B Green Twosies
B Green Square
C Orange Cube
我不关心 ColC 中的重复,并且 ColB 中变量的出现次数没有规律。我发现相关的子集策略专注于提取独特的案例,但我既没有遇到也无法设计一种方法来允许选择第一个变量类型的所有出现,并且希望能提供一些帮助。
我试过了
DF2 <- DF1[match(unique(DF1$ColB), DF1$ColB),]
...以及当变量内容已知时以变量为目标的子集(例如Subset first n occurrences of certain value in dataframe in R),这些看似不合适。
【问题讨论】:
-
你试过什么代码? SO 是编码资源而不是编码服务
-
我已经编辑了我的帖子以包含一些代码,如果有帮助可以添加更多,但问题不是其他适当代码中的错误,这就是我没有包含它的原因。抱歉,如果我的问题是期待服务,但事实并非如此,SO 指南似乎建议包含代码并不适合每个问题,这是我用作指南的内容。