Question

Hi: I have an xts object as such:

           AAPL.Open AAPL.High AAPL.Low AAPL.Close AAPL.Volume AAPL.Adjusted
2013-09-09    505.00    507.92   503.48     506.17    12116200        506.17
2013-09-10    506.20    507.45   489.50     494.64    26490200        494.64
2013-09-11    467.01    473.69   464.81     467.71    32031600        467.71
2013-09-12    468.50    475.40   466.01     472.69    14409400        472.69

I try to calculate a rolling mean and attach it to a new column as such

AA["AAPL.Rolling"] <- rollmean(AA[,"AAPL.Adjusted"],12)

Although the rollmean(AA[,"AAPL.Adjusted"],12) works on its own; I get an error message when I try to attach to a new column. ** also what makes this hard is that the new rolling mean will not have data in every row since the first 12 should be "NA" Can anyone help? Thank you much.

Was it helpful?

Solution

You can't add columns to zoo/xts objects like that. You can use the $<- function though.

AA$AAPL.Rolling <- rollmean(AA[,"AAPL.Adjusted"], 12)

Also note that rollmean is center-aligned by default. You may want to use rollmeanr to get right-alignment. Padding with NA will happen automatically, since you're merging the rolling mean with the original object. Use fill=NA if you want rollmean to add them explicitly.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top