[英]R - Subset dataframe based on a lookup dataframe
我有2個數據框。
我想子集Df1返回一個新的數據框,其中id和month是來自查找數據框的匹配項:lookupDf。
這些匹配的行將在Df3中生成。
例如:
Df1
id month x
A 20 10
B 20 11
C 20 12
D 20 13
E 20 14
A 21 15
B 21 16
C 21 17
D 21 18
E 21 19
lookupDf
id month
A 20
B 20
C 20
E 20
C 21
D 21
Df3將是Df1的子集
Df3
id month x
A 20 10
B 20 11
C 20 12
E 20 14
C 21 17
D 21 18
使用tidyverse
工具,看看各join
函數dplyr
。
在這里,您要保留df1中與lookupDf中匹配的行,因此您要使用semi_join
,如果它們與lookupDf中的多個行匹配,則不會復制df1中的行。
Df3 <- dplyr::semi_join(Df1, lookupDf)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.