是否可以在另一个数据帧中找到一个数据帧的相应行。 使用R命令? 之后将结果存储在另一个数据框中。
示例:
data1 = airquality[1:14,]
data2 = data.frame(index=data1$Ozone[6:14])
我希望在其他数据框中包含与此2数据帧的相同行相对应的日期。我认为data1的臭氧值就像索引一样。
所以我最终想要得到的是data3中的这类东西:
index Month Day
28 5 6
23 5 7
19 5 8
8 5 9
NA 5 10
7 5 11
16 5 12
11 5 13
14 5 14
答案 0 :(得分:1)
您可以使用%in%
运算符:
data3 <- data1[data1$Ozone %in% data2$index, c("Ozone", "Month", "Day")]
data3
Ozone Month Day
5 NA 5 5
6 28 5 6
7 23 5 7
8 19 5 8
9 8 5 9
10 NA 5 10
11 7 5 11
12 16 5 12
13 11 5 13
14 14 5 14
您的索引示例中有NA。 R将在结果data.frame中选择所有NA。除非您想要选择所有这些,否则请避免在索引中使用它们。
如果你想使用行名,你可以这样做:
data1[!rownames(data1) %in% 1:5, c("Ozone", "Month", "Day")]
Ozone Month Day
6 28 5 6
7 23 5 7
8 19 5 8
9 8 5 9
10 NA 5 10
11 7 5 11
12 16 5 12
13 11 5 13
14 14 5 14