我基本上试图对美国经济衰退做一些计算。 我从FRED下载了数据,它看起来像这样:
library(quantmod)
getSymbols("USREC",src="FRED")
1754 2001-01-01 0
1755 2001-02-01 0
1756 2001-03-01 0
1757 2001-04-01 1
1758 2001-05-01 1
1759 2001-06-01 1
1760 2001-07-01 1
1761 2001-08-01 1
1762 2001-09-01 1
1763 2001-10-01 1
1764 2001-11-01 1
1765 2001-12-01 0
1766 2002-01-01 0
1767 2002-02-01 0
1768 2002-03-01 0
1769 2002-04-01 0
1770 2002-05-01 0
1771 2002-06-01 0
其中1表示衰退,0表示非衰退(增长)。
我想计算连续1的平均长度,最大长度和最小长度。与0相同。
我想在优雅的时尚中做到这一点。我可能正在考虑将0转换为-1并进行一些总结。我搜索了很多,似乎无法找到一条好的工作途径。
这个帖子提供了一些线索,但他只是在密谋(据我所知): R Recession Dates Conversion
有人能指出我正确的方向吗?
答案 0 :(得分:1)
让your_vector
成为衰退/非经济衰退的二元向量,
oo <- with(rle(your_vector), split(lengths, values))
sapply(oo, function(x) c(min = min(x), max = max(x), mean = mean(x)))
我无法从quantmod
获取您的数据,也不知道原因。