虽然很简单,但我不知道data.table在数据表中选择组中前n行的解决方案.你能帮帮我吗?
我想基于两列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
Run Code Online (Sandbox Code Playgroud)
将成为DF2:
ColA ColB ColC
A Red 7thing
A Red OneBot
B Green Thing7
B Green Twosies
B Green Square
C Orange Cube
Run Code Online (Sandbox Code Playgroud)
我不关心ColC中的重复项,并且ColB中变量的出现次数没有模式.我发现的相关子集策略侧重于提取独特的案例,但我既没有遇到也没有能够设计出允许选择第一个变量类型的所有事件的方法,并且会感激一些帮助.
我试过了
DF2 <- DF1[match(unique(DF1$ColB), DF1$ColB),]
Run Code Online (Sandbox Code Playgroud)
...当变量内容已知时(例如,子集在R中的数据帧中首先出现n个特定值的子集),并且这些子集化看起来不合适.