[R-br] amostras aleatorias de um dataframe

Walmes Zeviani walmeszeviani em gmail.com
Sábado Outubro 29 15:54:46 BRST 2011


Organizar idéias: Primeiro fazer um split() da seguência 1:nrow(da) por
nível de parcela. Dentro de cada vetor fazer um sample() dos números.
Concatenar todos os vetores e usá-lo para acessar o data.frame. Tudo sem um
for(). Segue a versão mais simples:

dados <- data.frame(parcela=rep(1:5, each=5), obs=rep(1:5,5), y=rnorm(25),
z=rnorm(25))
id <- seq_len(nrow(dados))
id
id.spl <- split(id, f=dados$parcela)
id.spl
id.sam <- lapply(id.spl, sample, size=5, replace=TRUE)
id.sam
id.sam <- do.call(c, id.sam)
id.sam
dados2 <- dados[id.sam,]
dados2

À disposição.
Walmes.

==========================================================================
Walmes Marques Zeviani
LEG (Laboratório de Estatística e Geoinformação, 25.450418 S, 49.231759 W)
Departamento de Estatística - Universidade Federal do Paraná
fone: (+55) 41 3361 3573
VoIP: (3361 3600) 1053 1173
e-mail: walmes em ufpr.br
twitter: @walmeszeviani
homepage: http://www.leg.ufpr.br/~walmes
linux user number: 531218
==========================================================================
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://listas.inf.ufpr.br/pipermail/r-br/attachments/20111029/baeffafd/attachment.html>


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