Extrair por sorteio linhas de um data frame dentro de cada nível de um fator

Prezados Membros do R, Preciso extrair linhas de um data frame dentro de cada nível de um fator, usando a função sample_n() do pacote dplyr. Sendo meu CRM: #Data set artificial df <- data.frame(matrix(rnorm(80), nrow=40)) df$color <- rep(c("blue", "red", "yellow", "pink"), each=10) require(dplyr) #Sorteio sample_n(df, 3) #Sorteio sobre todo o data frame X1 X2 color 6 -0.2386293 -1.2611679 blue 21 0.6337288 -0.7817087 yellow 28 -0.1949911 0.6397060 yellow No entanto, não é bem isso que eu quero, na verdade, eu gostaria de realizar o sorteio de uma amostra aleatória de tamanho 3 em cada nível do fator color, ou seja, quero que seja sorteados 3 valores para cada cor. Ficando algo do tipo: X1 X2 color 3 0.22232534 1.83730750 blue 6 -0.23862925 -1.26116791 blue 7 -1.22555359 -1.60739354 blue 15 -1.12092508 -0.04395679 red 16 -0.68780179 0.51116139 red 17 -0.98583965 0.09294828 red ... Alguém poderia me ajudar a resolver isso? Obrigado, Alexandre -- ====================================================================== Alexandre dos Santos Proteção Florestal IFMT - Instituto Federal de Educação, Ciência e Tecnologia de Mato Grosso Campus Cáceres Caixa Postal 244 Avenida dos Ramires, s/n Bairro: Distrito Industrial Cáceres - MT CEP: 78.200-000 Fone: (+55) 65 99686-6970 (VIVO) (+55) 65 3221-2674 (FIXO) e-mails:alexandresantosbr@yahoo.com.br alexandre.santos@cas.ifmt.edu.br Lattes: http://lattes.cnpq.br/1360403201088680 OrcID: orcid.org/0000-0001-8232-6722 - ResearcherID: A-5790-2016 Researchgate: www.researchgate.net/profile/Alexandre_Santos10 LinkedIn: br.linkedin.com/in/alexandre-dos-santos-87961635 Mendeley:www.mendeley.com/profiles/alexandre-dos-santos6/ ======================================================================

Basta dar um group_by(color) antes da amostragem: df %>% group_by(color) %>% sample_n(3) -- Marcus Nunes Professor Adjunto Universidade Federal do Rio Grande do Norte Centro de Ciências Exatas e da Terra Departamento de Estatística Laboratório de Estatística Aplicada marcus.nunes@ccet.ufrn.br http://marcusnunes.me/ 2018-04-26 15:44 GMT-03:00 ASANTOS via R-br <r-br@listas.c3sl.ufpr.br>:
Prezados Membros do R,
Preciso extrair linhas de um data frame dentro de cada nível de um fator, usando a função sample_n() do pacote dplyr. Sendo meu CRM:
#Data set artificial
df <- data.frame(matrix(rnorm(80), nrow=40)) df$color <- rep(c("blue", "red", "yellow", "pink"), each=10)
require(dplyr)
#Sorteio
sample_n(df, 3) #Sorteio sobre todo o data frame
X1 X2 color 6 -0.2386293 -1.2611679 blue 21 0.6337288 -0.7817087 yellow 28 -0.1949911 0.6397060 yellow
No entanto, não é bem isso que eu quero, na verdade, eu gostaria de realizar o sorteio de uma amostra aleatória de tamanho 3 em cada nível do fator color, ou seja, quero que seja sorteados 3 valores para cada cor. Ficando algo do tipo:
X1 X2 color
3 0.22232534 1.83730750 blue
6 -0.23862925 -1.26116791 blue
7 -1.22555359 -1.60739354 blue
15 -1.12092508 -0.04395679 red
16 -0.68780179 0.51116139 red
17 -0.98583965 0.09294828 red
...
Alguém poderia me ajudar a resolver isso?
Obrigado,
Alexandre
-- ====================================================================== Alexandre dos Santos Proteção Florestal IFMT - Instituto Federal de Educação, Ciência e Tecnologia de Mato Grosso Campus Cáceres Caixa Postal 244 Avenida dos Ramires, s/n Bairro: Distrito Industrial Cáceres - MT CEP: 78.200-000 Fone: (+55) 65 99686-6970 (VIVO) (+55) 65 3221-2674 (FIXO) e-mails:alexandresantosbr@yahoo.com.br alexandre.santos@cas.ifmt.edu.br Lattes: http://lattes.cnpq.br/1360403201088680 OrcID: orcid.org/0000-0001-8232-6722 - ResearcherID: A-5790-2016 Researchgate: www.researchgate.net/profile/Alexandre_Santos10 LinkedIn: br.linkedin.com/in/alexandre-dos-santos-87961635 Mendeley:www.mendeley.com/profiles/alexandre-dos-santos6/ ======================================================================
_______________________________________________ R-br mailing list R-br@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 fornea cdigo mnimo reproduzvel.
participantes (2)
-
ASANTOS
-
Marcus Nunes