我有一个捕鸟数据的数据框,有两列感兴趣:Set.Code和Status。 Set.Code是一个字母数字值。状态为1,2或3。
我需要让R提取状态为2的所有行,并且所有具有相同Set.Code的行都是状态为2的行。所以在上面的例子中,我将是查找两个第一行,因为第一行的状态为2,第二行的状态与状态为2的行具有相同的Set.Code。
我尝试提取所有2个状态,然后获取所有这些设置代码,然后从数据帧中提取所有这些设置代码:
我的数据框是数据:
Captures <- data[data$Status==2,]
Codes <- unique(Captures$Set.Code)
data[data$Set.Code==Codes,]
但这没效果。
答案 0 :(得分:0)
您可以使用dplyr完成此任务,我将您使用的相同框架复制到我将过滤后的观察结果存储到新data.frame的最后一行。 (你也可以让R向你展示结果)。
num <- 1:4
char <- c("A","A","B","C")
ab <- data.frame(num,char)
这里我设置了一个示例data.frame。
Captures <-ab[(ab$num==2),]
Codes <- unique(Captures$char)
以下是我从您那里复制的代码:
new.ab <- dplyr::filter(ab, num == 2 | char %in% Codes)
这是使用的dplyr。
{{1}}的本指南