[R-es] Suma de los últimos n valores

Paco Pastor paco en ceam.es
Mar Mar 15 12:40:25 CET 2011


Buenos días

Estoy intentando calcular la suma de los últimos n valores de una serie 
de datos para luego crear un objeto zoo antes de hacer más análisis. Lo 
que hago es calcular la media de todas las columnas de la matriz y luego 
el acumulado semanal de la media. Al ser una acumulación semanal, 
comienza a calcular a partir del séptimo valor por lo que añado seis 
valores nulos (sé que la lluvia en esos días fue 0). El problema viene 
al crear un objeto zoo ya que los 6 primeros datos de lluvia acumulada 
aparecen con un valor aleatorio y a partir de ahí existen más errores.

Supongo que estoy cometiendo algún error en el paso a un objeto zoo pero 
no lo veo.

Gracias

library(zoo)

pluja=read.csv("pluja.dat",header=F,sep=",")

pdat=pluja[2:length(pluja)]

mitja=rowMeans(pdat, na.rm=TRUE)

pdat2=cbind(pluja,mitja)

a7=diff(cumsum(c(0,pdat2$mitja)), 7)

s7=c(0,0,0,0,0,0,a7)

pdat2=cbind(pluja,mitja,s7)

pfecha=as.Date(pdat2[,1],"%d/%m/%Y")   # Fecha en format as.Date

pmitja=zoo(pdat2$mitja,pfecha)

p7=zoo(pdat2$s7,pfecha)

>  pdat2$s7[1:10]

  [1] 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000

  [7] 0.001449275 0.269565217 0.515942029 0.515942029

>  pdat2$mitja[1:10]

  [1] 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000

  [7] 0.001449275 0.268115942 0.246376812 0.000000000

>  pmitja[1:10]

1968-01-01 1968-01-02 1968-01-03 1968-01-04 1968-01-05 1968-01-06 1968-01-07

          0          0          0          0          0          0          0

1968-01-08 1968-01-09 1968-01-10

          0          0          0

>  p7[1:10]

1968-01-01 1968-01-02 1968-01-03 1968-01-04 1968-01-05 1968-01-06 1968-01-07

43.4023376  0.3102941 39.1014706 39.1014706 39.1014706 38.5000000 30.5794118

1968-01-08 1968-01-09 1968-01-10

22.8411765  0.0000000 49.7621005

-- 
-----------
Francisco Pastor
Meteorology department, Instituto Universitario CEAM-UMH
http://www.ceam.es
-----------
mail: paco en ceam.es
skype: paco.pastor.guzman
Researcher ID: http://www.researcherid.com/rid/B-8331-2008
Cosis profile: http://www.cosis.net/profile/francisco.pastor
-----------
Parque Tecnologico, C/ Charles R. Darwin, 14
46980 PATERNA (Valencia), Spain
Tlf. 96 131 82 27 - Fax. 96 131 81 90



Más información sobre la lista de distribución R-help-es