Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/amazon-web-services/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在R中,根据与另一个表的匹配情况和日期小于另一个表的情况筛选一个表的行_R_Tidyverse - Fatal编程技术网

在R中,根据与另一个表的匹配情况和日期小于另一个表的情况筛选一个表的行

在R中,根据与另一个表的匹配情况和日期小于另一个表的情况筛选一个表的行,r,tidyverse,R,Tidyverse,我在R中有两个类似于以下内容的表格: df1 lat long date 1.1 2.3 12-4-70 3.3 7.3 5-5-80 1.1 2.3 7-2-90 df2 lat long date 1.1 2.3 6-12-82 3.3 2.4 6-10-83 8.4 7.3 8-19-88 这称为非等联接。您可以使用fuzzyjoin包对dplyr执行此操作: library(fuzzyjoin) library(lubridate) df1 <- df

我在R中有两个类似于以下内容的表格:

df1 lat long date 1.1 2.3 12-4-70 3.3 7.3 5-5-80 1.1 2.3 7-2-90 df2 lat long date 1.1 2.3 6-12-82 3.3 2.4 6-10-83 8.4 7.3 8-19-88
这称为非等联接。您可以使用
fuzzyjoin
包对
dplyr
执行此操作:

library(fuzzyjoin)
library(lubridate)
df1 <- df1 %>% mutate(date = mdy(date))
df2 <- df2 %>% mutate(date = mdy(date))

fuzzy_inner_join(df1, df2, 
                 by = c("lat" = "lat", "long" = "long", "date" = "date"),
                 match_fun = list(`==`,`==`,`<`))
# A tibble: 1 x 6
  lat.x long.x date.x     lat.y long.y date.y    
  <dbl>  <dbl> <date>     <dbl>  <dbl> <date>    
1   1.1    2.3 1970-12-04   1.1    2.3 1982-06-12
库(fuzzyjoin)
图书馆(lubridate)
df1%突变(日期=mdy(日期))
df2%突变(日期=mdy(日期))
模糊内连接(df1,df2,
by=c(“lat”=“lat”,“long”=“long”,“date”=“date”),

match_fun=list(`==`,`==`,`这称为非相等联接。您可以使用
fuzzyjoin
包对
dplyr
执行此操作:

library(fuzzyjoin)
library(lubridate)
df1 <- df1 %>% mutate(date = mdy(date))
df2 <- df2 %>% mutate(date = mdy(date))

fuzzy_inner_join(df1, df2, 
                 by = c("lat" = "lat", "long" = "long", "date" = "date"),
                 match_fun = list(`==`,`==`,`<`))
# A tibble: 1 x 6
  lat.x long.x date.x     lat.y long.y date.y    
  <dbl>  <dbl> <date>     <dbl>  <dbl> <date>    
1   1.1    2.3 1970-12-04   1.1    2.3 1982-06-12
库(fuzzyjoin)
图书馆(lubridate)
df1%突变(日期=mdy(日期))
df2%突变(日期=mdy(日期))
模糊内连接(df1,df2,
by=c(“lat”=“lat”,“long”=“long”,“date”=“date”),

match_-fun=list(`==`,`==`,`另一个选项是与
数据的非相等联接。table

library(data.table)
setDT(df1)[, date := as.IDate(date, "%m-%d-%y")
setDT(df2)[, date := as.IDate(date, "%m-%d-%y")
df1[df2, on = .(lat, long, date < date)]
库(data.table)
setDT(df1)[,日期:=as.IDate(日期,%m-%d-%y”)
setDT(df2)[,日期:=as.IDate(日期,“%m-%d-%y”)
df1[df2,on=(横向,纵向,日期<日期)]

另一个选项是与
数据的非等联接。表

library(data.table)
setDT(df1)[, date := as.IDate(date, "%m-%d-%y")
setDT(df2)[, date := as.IDate(date, "%m-%d-%y")
df1[df2, on = .(lat, long, date < date)]
库(data.table)
setDT(df1)[,日期:=as.IDate(日期,%m-%d-%y”)
setDT(df2)[,日期:=as.IDate(日期,“%m-%d-%y”)
df1[df2,on=(横向,纵向,日期<日期)]