Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/75.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/fsharp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R:聚合时间序列数据返回NA_R_Xts - Fatal编程技术网

R:聚合时间序列数据返回NA

R:聚合时间序列数据返回NA,r,xts,R,Xts,我尝试使用xts以5分钟的方式聚集数据: library(xts) data <- read.csv("C:/Users/User/Documents/data.csv") times <- data$Time X <- as.POSIXct(times) X <- as.xts(X) DataTable <- period.apply(X, endpoints(X, "minutes", 5), mean) 以下是输入文件: 有人知道我做错了什么吗 问题是您将X

我尝试使用xts以5分钟的方式聚集数据:

library(xts)
data <- read.csv("C:/Users/User/Documents/data.csv")
times <- data$Time
X <- as.POSIXct(times)
X <- as.xts(X)
DataTable <- period.apply(X, endpoints(X, "minutes", 5), mean)
以下是输入文件:


有人知道我做错了什么吗

问题是您将
X
作为聚合的参数,而不是数字字段(例如
T1
T2

库(xts)

mydata问题在于,您的xts对象没有任何数据,因为您仅使用时间创建它。您的第一段代码相当于:

library(xts)
data <- read.csv("C:/Users/User/Documents/data.csv")
X <- as.xts(as.POSIXct(data$Time))

非常感谢你。我还有一个问题你可以帮我吗?我将如何在5分钟的时间间隔内聚合滴答声,我是否需要在我的CSV文件中添加另一列,并为每个条目填充“1”,然后每隔5分钟将它们相加?@user3256536非常欢迎。滴答声?你是说在阴谋中?我相信您只需要使用
breaks
选项来设置刻度线。使用
cut
breaks
的问题是,您只能将刻度线设置为预定值,例如小时或分钟,而不能将其设置为5分钟。我的错,是的,你可以<代码>数据表
   library(xts)
    mydata    <- read.csv("data.csv")
    times     <- mydata$Time
    X         <- as.POSIXct(times)
    X         <- as.xts(X)
    period.apply(mydata$T1, INDEX = endpoints(X, "minutes", 5), function(x) mean(x, na.rm=T))
library(xts)
data <- read.csv("C:/Users/User/Documents/data.csv")
X <- as.xts(as.POSIXct(data$Time))
X <- as.xts(read.zoo("C:/Users/User/Documents/data.csv", sep=",", header=TRUE))
DataTable <- period.apply(X, endpoints(X, "minutes", 5), mean)