我正在做一些周期性分析。
我有变量 X,如果处于收缩状态则为真,否则为假
X
##[1] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
……
我把它变成了 0 和 1
X2<-as.ts(X*1)
然后我有一个日期序列。
td
## [1] "2000-01-31" "2000-02-29" "2000-03-31" "2000-04-30" "2000-05-31" "2000-06-30"
……
然后我使用 'zoo' 以X2
td 顺序索引。
library(zoo)
na_ts = zoo(x=X2, order.by=td)
现在是我的问题。我想确定值更改的日期,并计算该系列保持为 1 和 0 的时间。
所以想要的结果:
start end type duration
2000-01-31 - 2001-05-31 contraction 17 months
2001-06-30 - 2004-05-31 expansion ....
有人会帮我吗?提前谢谢了。