r - 加入 2 个具有条件和不同行数的表
问题描述
我想加入两个data.table
不同行数的 s
Table 1= 18000 rows
Table 2= 3000 rows
为了匹配两个表,有不同的条件 第一个条件:表 2 的 ID 应该与表 1 的 ID 相似 第二个条件:表 2 的日期应该等于或高于表 1 的开始日期,低于表 1 的结束日期表 1 我尝试了这样的代码,但它不起作用
match<-Table1[Table2, on = c("ID.currency==ID.currency", "start date<=date table2","end date>date table2")]
非常感谢您的帮助
表1:结构(列表(ID.currency.startdate.open.high.low.close.volume.enddate.number.of.trades =结构(c(4L,1L,2L,3L,5L),.Label = c ("EURCHF,01/11/2017 01:00,1.1639,1.1656,1.1619,1.162,5500,01/11/2017 01:59,1555", "EURCHF,01/11/2017 02:00,1.1651,1.1666 ,1.1633,1.164,6000,01/11/2017 02:59,1900", "EURCHF,01/11/2017 03:00,1.1645,1.1662,1.1641,1.1657,6100,01/11/2017 03:59, 3000", "EURUSD,01/11/2017 00:00,1.1619,1.1646,1.1659,1.1607,5000,01/11/2017 00:59,1500", "EURUSD,01/11/2017 04:00,1.1619 ,1.1646,1.1659,1.1607,7000,01/11/2017 04:59,3500"), class = "factor")), row.names = c(NA, 5L), class = "data.frame")
表2:结构(列表(用户名.ID.currency.date.score =结构(c(2L,3L,4L,1L,5L),.Label = c(“Alpha,EURCHF,31/11/2017 00: 57:00,2.98", "Alpha,EURUSD,01/11/2017 00:44,2.5", "Beta,EURCHF,31/11/2017 00:57:00,1.78", "Beta,EURUSD,01/ 11/2017 04:12,3.23", "Beta,EURUSD,31/12/2018 00:17,0.678"), class = "factor")), row.names = c(NA, 5L), class = "数据.frame")
输出:
结构(列表(ID.currency.startdate.open.high.low.close.volume.enddate.number.of.trades.user.name.ID.currency.date.score = 结构(c(4L,1L,2L, 3L, 5L), .Label = c("EURCHF,01/11/2017 01:00,1.1639,1.1656,1.1619,1.162,5500,01/11/2017 01:59,1555,NA,NA,NA,NA ", "EURCHF,01/11/2017 02:00,1.1651,1.1666,1.1633,1.164,6000,01/11/2017 02:59,1900,NA,NA,NA,NA", "EURCHF,01/11 /2017 03:00,1.1645,1.1662,1.1641,1.1657,6100,01/11/2017 03:59,3000,NA,NA,NA,NA", "EURUSD,01/11/2017 00:00,1.1619, 1.1646,1.1659,1.1607,5000,01/11/2017 00:59,1500,Alpha,EURUSD,01/11/2017 00:44,2.5", "EURUSD,01/11/2017 04:00,1.1619,1.1646 ,1.1659,1.1607,7000,01/11/2017 04:59,3500,Beta,EURUSD,01/11/2017 04:12,3.23"), class = "factor")), row.names = c(NA , 5L), 类 = "data.frame")
解决方案
以下是我的 sessionInfo sessionInfo() R 版本 3.5.2 (2018-12-20) 的详细信息 平台:i386-w64-mingw32/i386 (32-bit) 运行条件:Windows 7 (build 7601) Service Pack 1
推荐阅读
- php - Laravel问题上次登录,每行都标记时间
- image - 在单色图像中找到具有浮点区域的最大内接正方形
- django - Django 3.0 值错误
- javascript - Can I omit Return value in arrow function in JavaScript?
- python - 简单文本推荐系统的语法错误
- javascript - 使用 node.js、npmjs websocket 构建实时聊天
- php - 尝试放置操作按钮时出错(使用 Json 方法)
- python - 如何在 Python 中使用多个标签进行一次热编码?
- django - 将 S3 用于用户图像内容:单个或多个存储桶?
- sql - 我如何将两个查询与其中的每个计数和条件相加