[R-br] amostras aleatorias de um dataframe

Henrique Dallazuanna wwwhsd em gmail.com
Domingo Outubro 30 13:46:39 BRST 2011


Samuel,

Tente também:

dados[unlist(with(dados, tapply(seq(nrow(dados)), parcela, sample, size = 3))),]

2011/10/29 Samuel Carvalho <samukajm em yahoo.com.br>:
> Caros,
> Boa tarde,
> Alguem tem alguma dica para fazer amostras aleatorias de um conjunto de
> dados agrupado por parcela?
> Segue um #RCMR de exemplo
> dados <- data.frame(parcela = rep(1:5,each=5), obs=rep(1:5,5), y=rnorm(25),
> z=rnorm(25))
> dados
> a idéia é que sejam retiradas amostras aleatorias deste conjunto. Segue um
> exemplo de um código sugerido pelo Ivan, valeu Ivan
> amostras <- list()
> for(i in 1:5){
>   amostras[[i]] <- apply(subset(dados,parcela==i),2,function(x)
> sample(x,3,replace=F))
> }
> amostras
> tmp <-
> as.data.frame(rbind(amostras[[1]],amostras[[2]],amostras[[3]],amostras[[4]],amostras[[5]]))
> tmp #Problema aqui é inserir uma a uma. Neste caso tenho cinco parcelas daí
> fica tranquilo mas a base que estou usando tem mais de 9mil, enfim
>
> Grande abraço e bom fds a todos
>
> ====================================
> Samuel P. C. Carvalho
> Mestre em Ciências Florestais [UFLA]
> Doutorando em Recursos Florestais [ESALQ/USP]
> =============================================
> _______________________________________________
> R-br mailing list
> R-br em listas.c3sl.ufpr.br
> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
> Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código
> mínimo reproduzível.
>



-- 
Henrique Dallazuanna
Curitiba-Paraná-Brasil
25° 25' 40" S 49° 16' 22" O


Mais detalhes sobre a lista de discussão R-br