Hola Oscar,

Gracias por tus consejos. Los estoy poniendo en práctica aunque todavía no he 
logrado resolverlo. Por otra parte, estoy pensando ponerme en contacto con el 
autor del libro, pues quizá el problema vaya por lo que decías de un cambio en 
las funciones posterior a la edición del libro. Si logro la solución por esta 
vía os lo haré saber igualmente.

saludos,

Fernando

-----Mensaje original-----
De: [email protected] [mailto:[email protected]] En nombre de 
Oscar Perpiñan
Enviado el: domingo, 17 de agosto de 2014 9:14
Para: Fernando Sanchez
CC: [email protected]
Asunto: Re: [R-es] error en código de wavelets

Hola, Para los que no tengáis el libro, el código a que hace referencia está
aquí: http://books.google.es/books?id=5gLAQLTl4iQC.
En el bucle usa dos funciones, "adjust" y "pred", que no están incluidas en el 
paquete, sino en una página web externa según indica el libro 
(http://www.maths.bris.ac.uk/people/faculty/mapzf/), pero yo no las encuentro. 
Supongo que el error puede ser debido a algún cambio en estas funciones 
posterior a la edición del libro.
En todo caso, prueba con traceback() después de obtener el error.
También te será útil recorrer el bucle paso a paso para encontrar el problema. 
Esto lo consigues fácilmente saltando la línea de "for" y asignando un valor 
cualquiera a "h". Saludos. Oscar. 
-----------------------------------------------------------------
Oscar Perpiñán Lamigueiro
Dpto. Ingeniería Eléctrica (ETSIDI-UPM)
Grupo de Sistemas Fotovoltaicos (IES-UPM)
URL: http://oscarperpinan.github.io
Twitter: @oscarperpinan

El día 15 de agosto de 2014, 21:57, Fernando Sanchez escribió:
> Hola a todos,
>
> Estoy ejecutando un código de Wavelets extraído del libro: Nason, G.P. (2008) 
> Wavelet Methods in Statistics with R. Springer.
>
> El código es el que os pongo debajo, y después del bucle for me da el error 
> que os señalo:
> Error en (`(`) : 2 arguments passed to '(' which requires 1
>
> ¿Alguien sabe qué puede estar ocurriendo? La verdad es que llevo días 
> revisándolo y no sé qué pasa.
>
> library(wavethresh)
> data(BabyECG)
> nsteps <- 10
> s <- 40
> nBaby <- length(BabyECG)
> pBaby <- BabyECG[1:(nBaby - nsteps)]
> meanpBaby <- mean(pBaby)
> pBaby <- pBaby - meanpBaby
> ppred <- rep(0, nsteps)
> pse <- rep(0,nsteps)
> for(h in 1:nsteps) {
> pBaby.par <- adjust(pBaby, h=h, s=s)
> pBaby.pred <- pred(pBaby, h=h,
> p = pBaby.par$p[s+1], g = pBaby.par$g[s+1]) ppred[h] <-
> pBaby.pred$mean + meanpBaby pse[h] <- pBaby.pred$std.err  } # BebeVals are 
> just the ones we want to plot
BebeVals <- (nBaby - 
> 2*nsteps+1):nBaby yr <- range(c(BabyECG[BebeVals], ppred))
> plot(BebeVals, BabyECG[BebeVals],type="l", ylim=yr,
> xlab="Observation", ylab="BabyECG") points(BebeVals, ppred)
>
> Un saludo y muchas gracias,
>
> Fernando
>
>
> _______________________________________________
> R-help-es mailing list
> [email protected] 
> https://stat.ethz.ch/mailman/listinfo/r-help-es

_______________________________________________
R-help-es mailing list
[email protected]
https://stat.ethz.ch/mailman/listinfo/r-help-es

Responder a