【发布时间】:2015-01-26 22:49:45
【问题描述】:
我有许多具有结构的 xts 对象:
* Resp_1
...
2014-11-24 18:45:41 " 4.98683210"
2014-11-24 18:45:52 " 4.94921172"
2014-11-24 18:46:02 " 4.95605396"
2014-11-24 18:46:12 " 4.95352998"
2014-11-24 18:46:23 " 4.99771640"
2014-11-24 18:46:33 " 4.98459552"
2014-11-24 18:46:44 " 5.00530512"
2014-11-24 18:46:54 " 4.98655576"
2014-11-24 18:47:04 " 4.98136715"
2014-11-24 18:47:15 " 5.01771098"
...
测量值有时间戳。
由于实验的进行方式,感兴趣的值包含需要减去的背景水平。使这更加困难的是背景水平不是恒定的,并且不可能使用单个校正值。
http://i.imgur.com/GBD8clN.jpg?1
所以背景水平是在实验前后测量的(见红色虚线末端的图片)。
现在我想从测量值中减去背景水平。我想这样做的方法是在背景水平之前和之后创建一个插值背景水平向量,然后简单地从 Resp_1 值中减去这个向量。
目前,我已经设法从图表中手动确定包含前后背景水平的时间段,并计算两者的平均值。 例如:
backg_before<-mean(as.numeric(df$Resp_1["2014-11-24 18:45:40/2014-11-24 18:47:20"]))
backg_after<-mean(as.numeric(df$Resp_1["2014-11-25 09:33:00/2014-11-25 09:36:00"]))
所以我知道背景级别之前和之后的平均值,但我不知道如何在两个级别之间插入向量。
向量应该经过选定的前后时间段的中间。例如,背景电平之前的平均值是 4.98,它的时间线位置应该是大约 18:46:28。由于不存在这样的时间戳,它也可能是最接近的现有时间戳(18:46:23 或 18:46:33)。
我不知道如何找到 xts 时间序列索引的中间值。有没有办法做到这一点?
以及如何构建所需的向量?
【问题讨论】:
标签: r time-series xts