r - 使用 NA 的时间序列填充

标签 r time-series

说,如果我有一个如下的数据框:

Date1 <- seq(from = as.POSIXct("2010-05-01 02:00"), 
             to = as.POSIXct("2010-10-10 22:00"), by = 3600)
Dat <- data.frame(DateTime = Date1,
                  x1 = rnorm(length(Date1)))

每次测量之间的间隔为 1 小时。怎么可能在这一年的剩余时间里用 NA 填充这个数据框,最终解决方案的长度应该是 8760,即全年的每小时测量值。例如,我想让 DateTime 列的范围从 2010-01-01 00:00 到 2010-12-31 23:00,但是对于已添加到原始日期的日期,x1 列是 NA数据框(如果有意义的话)。我想提出一个可以有任意年数的解决方案,即如果数据从 2009 年 5 月延伸到 2012 年 9 月,那么最终解决方案应该有这个数据集,但缺少时间,即从 2009 年 1 月到 2012 年 12 月到用 NA 填充。我该如何解决这个问题?

最佳答案

创建包含所有小时的新数据框,然后合并两个数据框。

df2<-data.frame(DateTime=seq(from = as.POSIXct("2010-01-01 00:00"), 
                             to = as.POSIXct("2010-12-31 23:00"), by = "hour"))
merge(df2,Dat,all=TRUE)

关于r - 使用 NA 的时间序列填充,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17784192/

相关文章:

python - 在 Python 中对选定的日期数据进行子集化

python - 在python中使用rpy2将分位数输入ggplot geom_boxplot

regex - R正则表达式在@之后解析 token ,字符串中也没有其他 token

r - 在 R 中单击另一个绘图更改绘图的限制

r - ggplot2 - 在 x 轴上按季度绘制的线图

python - 如何使用神经网络预测峰值(最好在 python 中使用 neurolab 或 pybrain)

r - 如何为 R 中的情感分析分配不同的分数?

r - 是否可以在 R 中使用 ifelse() 添加第三个虚拟变量?

Python - 在图中寻找模式

python - 在Python中忽略大于x分钟的时间间隔Matplotlib