xts 错误,as.POSIXct“'order.by' 不能包含 'NA'、'NaN' 或 'Inf'”
Error in xts, as.POSIXct "'order.by' cannot contain 'NA', 'NaN', or 'Inf'"
我有一个包含日期列和价格列的 CSV 文件。
我正在尝试将其转换为 xts 格式,以便最终可以使用 aggreggets 函数。但是,当我尝试 运行 以下代码时:
mydata_xts=xts(mydata, order.by=as.POSIXct(mydata$Date, format="%d%/m/%y %H:%M"))
我收到此错误:
Error in xts(mydata, order.by = as.POSIXct(mydata$Date, format = "%d%/m/%y %H:%M"))
'order.by' cannot contain 'NA', 'NaN', or 'Inf'
我确定我的数据没有任何缺失值或无效值。我怀疑问题是 Excel 格式化时间的方式。
附件是关于我的数据的一些信息。
head(mydata)
Date Price
1 1/03/2018 0:30 62.07
2 1/03/2018 1:00 60.35
3 1/03/2018 1:30 57.16
4 1/03/2018 2:00 55.88
5 1/03/2018 2:30 58.19
6 1/03/2018 3:00 60.63
summary(mydata)
Date Price
1/03/2018 0:30 : 1 Min. : 14.46
1/03/2018 1:00 : 1 1st Qu.: 61.98
1/03/2018 1:30 : 1 Median : 63.77
1/03/2018 10:00: 1 Mean : 66.70
1/03/2018 10:30: 1 3rd Qu.: 69.86
1/03/2018 11:00: 1 Max. :136.21
(Other) :1481
这是我的 Excel/csv 文件:https://imgur.com/a/QofdEZl
这里有一些随机生成数据的代码行可以帮助您。只需将 "db0" 替换为从 Excel 导入的数据(从头开始,这次尝试删除日期列)
library(xts)
set.seed(97531)
db0 <- as.data.frame(matrix(rnorm(1*1000, mean=5, sd=2), ncol=1))
date <- seq(from=as.POSIXct("2011-03-12 0:30", format = "%Y-%m-%d %H:%M"), length.out = nrow(db0), by = "30 min")
dbt <- xts(db0, date)
# index(dbt)
apply.weekly(dbt, FUN = "sum")
我有一个包含日期列和价格列的 CSV 文件。
我正在尝试将其转换为 xts 格式,以便最终可以使用 aggreggets 函数。但是,当我尝试 运行 以下代码时:
mydata_xts=xts(mydata, order.by=as.POSIXct(mydata$Date, format="%d%/m/%y %H:%M"))
我收到此错误:
Error in xts(mydata, order.by = as.POSIXct(mydata$Date, format = "%d%/m/%y %H:%M"))
'order.by' cannot contain 'NA', 'NaN', or 'Inf'
我确定我的数据没有任何缺失值或无效值。我怀疑问题是 Excel 格式化时间的方式。
附件是关于我的数据的一些信息。
head(mydata)
Date Price
1 1/03/2018 0:30 62.07
2 1/03/2018 1:00 60.35
3 1/03/2018 1:30 57.16
4 1/03/2018 2:00 55.88
5 1/03/2018 2:30 58.19
6 1/03/2018 3:00 60.63
summary(mydata)
Date Price
1/03/2018 0:30 : 1 Min. : 14.46
1/03/2018 1:00 : 1 1st Qu.: 61.98
1/03/2018 1:30 : 1 Median : 63.77
1/03/2018 10:00: 1 Mean : 66.70
1/03/2018 10:30: 1 3rd Qu.: 69.86
1/03/2018 11:00: 1 Max. :136.21
(Other) :1481
这是我的 Excel/csv 文件:https://imgur.com/a/QofdEZl
这里有一些随机生成数据的代码行可以帮助您。只需将 "db0" 替换为从 Excel 导入的数据(从头开始,这次尝试删除日期列)
library(xts)
set.seed(97531)
db0 <- as.data.frame(matrix(rnorm(1*1000, mean=5, sd=2), ncol=1))
date <- seq(from=as.POSIXct("2011-03-12 0:30", format = "%Y-%m-%d %H:%M"), length.out = nrow(db0), by = "30 min")
dbt <- xts(db0, date)
# index(dbt)
apply.weekly(dbt, FUN = "sum")