R XTS对象的逐月增长百分比

R XTS对象的逐月增长百分比,r,time-series,xts,R,Time Series,Xts,如何绘制以下数据的月环比增长: A 2008-07-01 0 2008-08-01 87 2008-09-01 257 2008-10-01 294 2008-11-01 325 2008-12-01 299 (以dput格式,在约书亚追捕我并在睡梦中谋杀我之前): 定义增长:第一个区别?百分比?在任何一种情况下,只需计算并绘制: R> index(KB) <- as.Date(index(KB)) ## what you have are d

如何绘制以下数据的月环比增长:

             A
2008-07-01   0
2008-08-01  87
2008-09-01 257
2008-10-01 294
2008-11-01 325
2008-12-01 299
(以dput格式,在约书亚追捕我并在睡梦中谋杀我之前):


定义增长:第一个区别?百分比?在任何一种情况下,只需计算并绘制:

R> index(KB) <- as.Date(index(KB))    ## what you have are dates, not datetimes
R> barplot(diff(KB), ylab="Change in value", main="Growth")

并将此绘图的
type=
参数更改为显示条形图等pp。通常情况下,绘图百分比会发生变化,但鉴于您的第一个数据点,这在此处是不允许的(如Gavin所述),因此此图与此图有所不同。

使用对象
dat中的
dput()
数据,假设你指的是上个月的百分比变化,那么:

R> (diff(dat) / lag(dat)) * 100
                            A
2008-07-01 05:00:00        NA
2008-08-01 05:00:00       Inf
2008-09-01 05:00:00 195.40230
2008-10-01 05:00:00  14.39689
2008-11-01 04:00:00  10.54422
2008-12-01 05:00:00  -8.00000
(忘记了情节)


不知道如何最好地处理第二个月-%的增长是无限的…

Pssh,我不会做那么苛刻的事情。。。不过我可以给你倒一桶冰水看起来quantmod中的
Delt
可能是我想要的,所以
Delt
对其默认值做了与
Diff/Lag
R> plot(diff(KB), type='b', ylab="Change in value", main="Growth")
R> (diff(dat) / lag(dat)) * 100
                            A
2008-07-01 05:00:00        NA
2008-08-01 05:00:00       Inf
2008-09-01 05:00:00 195.40230
2008-10-01 05:00:00  14.39689
2008-11-01 04:00:00  10.54422
2008-12-01 05:00:00  -8.00000
plot((diff(dat) / lag(dat)) * 100, main = "",
     ylab = "% growth (for some definition of % growth)")