[R-es] Bootstrap de días seguidos
Jesús Para Fernández
j.para.fernandez en hotmail.com
Jue Mar 31 17:00:29 CEST 2016
Es justo lo que buscaba. Muchas gracias.
Una unica cosa, como puedo pasar a un data.frame el resultado muestras, del lapply???
> To: r-help-es en r-project.org
> From: canadasreche en gmail.com
> Date: Thu, 31 Mar 2016 15:18:55 +0200
> Subject: Re: [R-es] Bootstrap de días seguidos
>
> Hola.
>
> No sé si buscas algo parecido a esto
>
> datos <- data.frame(v1 = rnorm(1000, 2, 5), v2 = rnorm(1000) )
>
> # numero de puntos aleatorios
> n.puntos <- 20
> puntos <- replicate(n.puntos, sample(nrow(datos), 1, replace = T) )
>
> puntos
> [1] 348 52 520 675 574 303 264 678 749 29 310 691 460 114 892 903
> 335 984 207 964
>
> # muestras de 21 filas
> k <- 20
> muestras <- lapply(puntos, function(x) datos[x:(x+k),])
>
> # muestras es una lista con k data.frames, el primero serán los datos de
> la fila 348 hasta la368
> muestras[[1]]
> v1 v2
> 348 -1.8855298 1.67022010
> 349 8.3539108 -0.75856401
> 350 3.1723330 -0.15722935
> 351 2.5871373 1.30962887
> 352 4.0801806 -0.22205638
> 353 8.7792425 1.92769400
> 354 1.8023941 0.60780632
> 355 -4.4542464 -0.30940621
> 356 1.4032584 -1.22315174
> 357 -1.1669957 -0.36789523
> 358 0.8834993 -0.51625882
> 359 -4.4173234 0.35013974
> 360 -6.2964411 0.64394556
> 361 0.4808418 1.41868648
> 362 0.6912628 -0.29357748
> 363 -4.1933794 0.90492395
> 364 -9.3685116 0.08371681
> 365 1.3305264 -0.18474498
> 366 2.9247997 1.24475278
> 367 8.8120307 0.48149808
> 368 8.0995250 1.30719019
>
> El 31/03/16 a las 10:46, Jesús Para Fernández escribió:
> > Buenas a todos,
> >
> > Lo primero agradecer todas las respuesta sque tuve en el tema de Bootstrap dataframe, que por estar de baja no he podido agradecer.
> >
> > De aquel tema sali� una sugerencia que me parece muy interesante y que a dia de hoy no soy capaz de hacer de una manera optima.
> >
> > Lo que quiero hacer es coger un dia al azar de todo el periodo, y a partuir de ese dia, coger por ejemplo los 20 dias siguientes.
> >
> > Recuerdo que para cogerlos al azar hacia lo siguiente:
> >
> > set.seed(121)
> > final<-0
> > nuevo<-0
> > for(i in 1:100000){
> > nuevo<-sample(datos$pedidos,replace=T)
> > final[i]<-sum(nuevo[1:20])
> > }
> >
> > donde aqui estoy cogiendo los 20 dias al azar.
> >
> > �Como haria para coger estos 20 dias seguidos??
> >
> > Gracias
> > Jes�s
> >
> >
> >
> >
> > [[alternative HTML version deleted]]
> >
> >
> >
> > _______________________________________________
> > R-help-es mailing list
> > R-help-es en r-project.org
> > https://stat.ethz.ch/mailman/listinfo/r-help-es
>
>
> [[alternative HTML version deleted]]
>
> _______________________________________________
> R-help-es mailing list
> R-help-es en r-project.org
> https://stat.ethz.ch/mailman/listinfo/r-help-es
[[alternative HTML version deleted]]
Más información sobre la lista de distribución R-help-es