我想用下一个代码生成日期序列:
vm1=strptime("2000-01-01 00:00:00", format="%Y-%m-%d %H:%M:%S")
vm2=strptime("2011-12-31 23:55:00", format="%Y-%m-%d %H:%M:%S")
vm3=seq(vm1, vm2, by = min(300))
问题是在某些特定日期程序会更改时区并省略部分生成的数据。例如:
vm3[24500:24510]
我将不胜感激任何帮助或指示。
我想用下一个代码生成日期序列:
vm1=strptime("2000-01-01 00:00:00", format="%Y-%m-%d %H:%M:%S")
vm2=strptime("2011-12-31 23:55:00", format="%Y-%m-%d %H:%M:%S")
vm3=seq(vm1, vm2, by = min(300))
问题是在某些特定日期程序会更改时区并省略部分生成的数据。例如:
vm3[24500:24510]
我将不胜感激任何帮助或指示。
这部分vm3对我来说看起来不错(英国语言环境,GMT/BST时区)。考虑强制您的日期使用通用时间,然后稍后更正到您的本地时区。
vm1=strptime("2000-01-01 00:00:00", format="%Y-%m-%d %H:%M:%S", tz = "UTC")
vm2=strptime("2011-12-31 23:55:00", format="%Y-%m-%d %H:%M:%S", tz = "UTC")
vm3=seq(vm1, vm2, by = "300 mins")
any(is.na(vm3)) #FALSE
顺便说一句,你想要一个by论点"300 mins",而不是min(300)。 min是最小函数;它与分钟无关。