【发布时间】:2015-08-05 01:44:38
【问题描述】:
我想在 R 中合并两个时间序列数据表,但希望将一个数据表的条目合并到前一个数据帧中它之前的条目。
这方面的一个例子是尝试将位置数据与购买数据相匹配,以找出人们每次购买的地点。我创建了两个示例数据集来说明这一点。一个人对每个位置变化都有一个观察,其中包括位置变化的日期和人的身份。一个人对每次购买都有一个观察,其中包括购买日期和人的身份。我想要的是合并这两者,这样我就可以知道每次购买之前最近的位置变化是什么,这样我就可以弄清楚购买发生在哪里。
创建示例数据集:
require(data.table)
df.loc = data.frame(date.loc = sample(seq(as.Date("2010-01-01"), by=1, length.out=50),50), ID = rep(letters[seq(1:5)],10))
df.pur = data.frame(date.pur = sample(seq(as.Date("2010-01-01"), by=1, length.out=50),50), ID = rep(letters[seq(1:5)],10))
#convert to a data.table for later analysis
dt.loc = as.data.table(df.loc)
dt.pur = as.data.table(df.pur)
样本数据示例:
head(dt.loc)
date.loc ID
2010-01-14 a
2010-01-19 b
2010-01-28 c
2010-02-12 d
2010-01-10 e
2010-02-10 a
谢谢!
【问题讨论】:
标签: r merge time-series data.table