Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/79.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中日期/时间上没有ID的两个数据帧_R_Join_Merge_Dplyr_Timestamp - Fatal编程技术网

合并R中日期/时间上没有ID的两个数据帧

合并R中日期/时间上没有ID的两个数据帧,r,join,merge,dplyr,timestamp,R,Join,Merge,Dplyr,Timestamp,我有两个数据帧,我试着用dplyr的internal_join函数连接在一起 newdf似乎您要问的是,是否有一种自动方式让R猜测您的数据是否正确。如果有一种方法可以让你对结果充满信心,我会感到惊讶。根据数据的稀疏程度(即,如果数据每分钟收集一次,而不是每秒钟收集一次),您可以将时间字符串重新格式化为H:M而不是H:M:S,然后将其合并。这些数据每分钟收集2-3次,因此H:M:S需要超过H:M。我不确定这是否要求R猜测。我假设有一种方法可以将参数设置为不超过3秒差的绝对值,以对齐两个数据帧。在某

我有两个数据帧,我试着用dplyr的internal_join函数连接在一起


newdf似乎您要问的是,是否有一种自动方式让R猜测您的数据是否正确。如果有一种方法可以让你对结果充满信心,我会感到惊讶。根据数据的稀疏程度(即,如果数据每分钟收集一次,而不是每秒钟收集一次),您可以将时间字符串重新格式化为H:M而不是H:M:S,然后将其合并。这些数据每分钟收集2-3次,因此H:M:S需要超过H:M。我不确定这是否要求R猜测。我假设有一种方法可以将参数设置为不超过3秒差的绝对值,以对齐两个数据帧。在某些情况下可能不存在匹配项,因此可以从联接中排除这些数据。但是,如果数据中有两行在3s阈值内,该怎么办?R应该如何知道/猜测与另一个数据帧的连接应该发生在这两行中的哪一行?当然,这取决于数据收集的工作方式。如果你知道没有两个观测值在3s范围内,那么我想我们可以进行某种匹配。如果后者是真的,那么一个非常幼稚和丑陋的方法可能是在第一个数据帧中创建六列,第一列比你原来的时间早3s,第二列早2s,依此类推。然后,您可以在这6列中循环,并将它们逐个用于与第二个数据集的联接。您可以尝试lubridate::round_date(x,“5秒”),并将这两组日期舍入到最接近的5秒,然后尝试联接