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

Paco Pastor paco en ceam.es
Mie Mar 16 10:47:19 CET 2011


Hola a todos y gracias a Carlos J. Gil

Según me comentó el problema era que al leer los datos no estaban 
ordenados por fecha y, por tanto, en la conversión a zoo no coincidían 
los valores con las fechas correspondientes. Añadiendo la ordenación por 
fechas justo después de la lectura ya salen los datos correctamente

pluja=read.csv("pluja.dat",header=F,sep=",")
fecha=as.Date(pluja[,1],"%d/%m/%Y")
precip=pluja[order(fecha),]

Gracias a todos

El 15/03/2011 12:40, Paco Pastor escribió:
> 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