R 从时间序列中选择规则间隔

R 从时间序列中选择规则间隔,r,time-series,xts,zoo,R,Time Series,Xts,Zoo,我试图根据不规则时间序列中的精确时间对间隔进行子集划分。数据为每3秒测量一次的CO2浓度。每当仪器连接到记录器时,都会出现一些间隙 我需要做的是,在一个月内的24小时内,将间隔替换为00:00:24到00:00:57和00:01:24到00:01:57。我将我的timeseries格式化为POSIXct,并通过窗口(x)对“zoo”和“xts”对象子集进行了尝试,但没有成功。另一个想法是创建一个重复标志或使用一个数字索引,但由于连接到一个中央记录设备,我每2小时就会错过几个时间步 我的数据如下所

我试图根据不规则时间序列中的精确时间对间隔进行子集划分。数据为每3秒测量一次的CO2浓度。每当仪器连接到记录器时,都会出现一些间隙

我需要做的是,在一个月内的24小时内,将间隔替换为00:00:24到00:00:57和00:01:24到00:01:57。我将我的timeseries格式化为POSIXct,并通过窗口(x)对“zoo”和“xts”对象子集进行了尝试,但没有成功。另一个想法是创建一个重复标志或使用一个数字索引,但由于连接到一个中央记录设备,我每2小时就会错过几个时间步

我的数据如下所示:

12/1/2014 12:00:00 AM;   412.2;              
12/1/2014 12:00:03 AM;   412.1;              
12/1/2014 12:00:06 AM;   422.6;              
12/1/2014 12:00:09 AM;   427.7;              
12/1/2014 12:00:12 AM;   430.7;              
12/1/2014 12:00:15 AM;   430.5;              
12/1/2014 12:00:18 AM;   431.4;              
12/1/2014 12:00:21 AM;   432.9;              
12/1/2014 12:00:24 AM;   433.3;              
12/1/2014 12:00:27 AM;   433.6;              
12/1/2014 12:00:30 AM;   434.3;              
12/1/2014 12:00:33 AM;   434.4;              
12/1/2014 12:00:36 AM;   435.4;              
12/1/2014 12:00:39 AM;   434.3;             
12/1/2014 12:00:42 AM;   434.0;              
12/1/2014 12:00:45 AM;   434.1;              
12/1/2014 12:00:48 AM;   434.4;              
12/1/2014 12:00:51 AM;   434.5;              
12/1/2014 12:00:54 AM;   434.9;              
12/1/2014 12:00:57 AM;   434.7;             
12/1/2014 12:01:00 AM;   435.4;             
12/1/2014 12:01:03 AM;   435.0;             
12/1/2014 12:01:06 AM;   434.1;             
12/1/2014 12:01:09 AM;   432.4;             
12/1/2014 12:01:12 AM;   432.6;             
12/1/2014 12:01:15 AM;   433.3;             
12/1/2014 12:01:18 AM;   433.5;              
我把它作为

library(zoo)
library(xts)
CO2 = read.csv(file="CO2_201412.csv", sep = ";", header = TRUE, stringsAsFactors = FALSE)
重新格式化索引

CO2[,1]=as.POSIXct(CO2[,1], tz='GMT', format="%m/%d/%Y %I:%M:%S %p")
并将其转换为xts对象

CO2xts = xts(CO2[,2], CO2[,1])
还是动物园里的东西

CO2zoo = zoo(CO2[,2], CO2[,1])
我需要这样的东西来工作:

CO2win = window(CO2xts, start=as.POSIXct('%Y-%m-%d %H:%M:24'),end=as.POSIXct('%Y-%m-%d %H:%M:57'))
如果我使用固定值,比如

CO2win = window(CO2xts, start=as.POSIXct('2014-12-01 12:00:24'),end=as.POSIXct('2014-12-01 12:00:57'))
它就像一个符咒,但正如前面所说的,我需要查询一个月内每一分钟、每一天的时间间隔

因为这是我问的第一个问题,所以我也非常感谢大家对这个问题的形式提出的意见。

像这样吗

sec <- as.integer(format(index(CO2xts),"%S"))
CO2xts[sec > 24 & sec < 57]
#                      [,1]
# 2014-12-01 00:00:27 433.6
# 2014-12-01 00:00:30 434.3
# 2014-12-01 00:00:33 434.4
# 2014-12-01 00:00:36 435.4
# 2014-12-01 00:00:39 434.3
# 2014-12-01 00:00:42 434.0
# 2014-12-01 00:00:45 434.1
# 2014-12-01 00:00:48 434.4
# 2014-12-01 00:00:51 434.5
# 2014-12-01 00:00:54 434.9
第24节和第57节]
#                      [,1]
# 2014-12-01 00:00:27 433.6
# 2014-12-01 00:00:30 434.3
# 2014-12-01 00:00:33 434.4
# 2014-12-01 00:00:36 435.4
# 2014-12-01 00:00:39 434.3
# 2014-12-01 00:00:42 434.0
# 2014-12-01 00:00:45 434.1
# 2014-12-01 00:00:48 434.4
# 2014-12-01 00:00:51 434.5
# 2014-12-01 00:00:54 434.9

请提供一个样本数据文件或代码来复制它。