提前致谢!
我有两个大数据集,都包含感兴趣的日期/时间字段列。第一个(head()
粘贴在下面),有一个我感兴趣的日期/时间字段 - “RoundDateTimeGMT”列。该数据表相当大(超过500,000行)。该数据特定于PumaID列所注明的个人。
PumaID RoundDateTimeGMT
1 P01 3/3/2011 0:00
2 P01 3/3/2011 0:00
3 P01 3/3/2011 0:00
4 P01 3/3/2011 0:00
5 P01 3/3/2011 0:00
6 P01 3/3/2011 0:00
第二个数据集有两个日期/时间字段,分别代表开始和结束时间(分别为'FstClstrTime'和'LastClstrTime')(下图)。所有时间都使用as.POSIXct()转换为可识别的R格式。如上所述,这些数据也特定于PumaID列所注明的个体。
PumaID FstClstrTime LastClstrTime
1 P01 8/29/2011 6:01 8/29/2011 8:01
2 P01 <NA> <NA>
3 P01 9/10/2011 2:00 9/12/2011 12:01
4 P01 9/9/2011 8:00 9/9/2011 14:01
5 P01 9/7/2011 8:01 9/8/2011 10:00
6 P01 9/4/2011 10:01 9/6/2011 12:01
我的目标是在第一个数据集中创建一个新的二进制列,指示RoundDateTimeGMT是否介于每个人的第二个数据表的“FstClstrTime”和“LastClstrTime”之间。如果每个数据表的PumaID匹配,我只需要检查RoundDateTimeGMT是否在'FstClstrTime'和'LastClstrTime'之间。我认为这可以通过for()循环来完成,但我可以接受任何建议。我只需要检查每个人的每个FstClstrTime'和'LastClstrTime的每个RoundDateTimeGMT(再次超过500,000)。
使用大型数据集dput()
不起作用,因此不会附加任何数据。我希望你仍然可以提供一些如何实现上述目标的建议。
亲切的问候!