繁体   English   中英

将R中的数据帧转换为时间序列-日期时间格式

[英]Convert Data Frame in R to Time Series - DATE HOUR FORMATTING

我在7月至9月的日期小时前有四个季度的数据,即07/01/2013 0:00,2013年7月1日1:00。 我应该有最大可能的92 * 24 = 2208个观察值。 由于某些原因,我在某些数据框中的观测值超过2208。

这是我的数据帧的输出

dput(head)
structure(list(DATEHOUR = c("07-01-13 0:00", "07-01-13 10:00", 
"07-01-13 11:00", "07-01-13 12:00", "07-01-13 13:00", "07-01-13 14:00"
), ImpressionsA.x = c(156, 564, 884, 1365, 1864, 1470), ImpressionsM.x = c(83, 
274, 338, 664, 807, 757), ImpressionsA.y = c(0.4, 0, 0.4, 0, 
0, 0), ImpressionsM.y = c(0.2, 0, 0.3, 0, 0, 0), Branded = c(0, 
0, 0, 0, 0, 0), ESI = c(0, 0, 0, 0, 0, 0), ImpressionsA.T = c(156.4, 
564, 884.4, 1365, 1864, 1470), ImpressionsM.T = c(83.2, 274, 
338.3, 664, 807, 757), Leads.T = c(0, 0, 0, 0, 0, 0)), .Names = c("DATEHOUR", 
"ImpressionsA.x", "ImpressionsM.x", "ImpressionsA.y", "ImpressionsM.y", 
"Branded", "ESI", "ImpressionsA.T", "ImpressionsM.T", "Leads.T"
), row.names = c(1L, 3L, 4L, 5L, 6L, 7L), class = "data.frame")

我阅读了以下帖子和链接http://astrostatistics.psu.edu/su07/R/html/base/html/strptime.html格式化 数据框中的日期列将带有日期列 的数据框 转换为时间序列,并尝试了为此: test$timestamp<-as.Date(as.character(test$DATEHOUR), format="%m%d%Y%I%M")及其组合,但test$timestamp<-as.Date(as.character(test$DATEHOUR), format="%m%d%Y%I%M") 我的目标是按时间序列获得2208(或任何重复的观测结果)。 我是R和编码的新手,所以请原谅我的菜鸟语法。

尝试这个:

> as.POSIXct(dd$DATEHOUR, format="%m-%d-%y %H:%M")
[1] "2013-07-01 00:00:00 PDT" "2013-07-01 10:00:00 PDT" "2013-07-01 11:00:00 PDT" "2013-07-01 12:00:00 PDT"
[5] "2013-07-01 13:00:00 PDT" "2013-07-01 14:00:00 PDT"

如果您懒得手动编写格式,可以尝试lubridate软件包

library(lubridate)
mdy_hm(df$DATEHOUR)

## [1] "2013-01-07 00:00:00 UTC" "2013-01-07 10:00:00 UTC" "2013-01-07 11:00:00 UTC"
## [4] "2013-01-07 12:00:00 UTC" "2013-01-07 13:00:00 UTC" "2013-01-07 14:00:00 UTC"

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM