Como tomar amostras de dados em r
Os estatísticos muitas vezes têm de recolher amostras de dados e, em seguida, calcular estatísticas. Tomando uma amostra é fácil com R porque uma amostra é realmente nada mais do que um subconjunto de dados. Para fazer isso, você faz uso de amostra()
Conteúdo
Digamos que você queria simular rolos de morrer, e você deseja obter dez resultados. Porque o resultado de um único rolo de um dado é um número entre um e seis anos, seu código se parece com isso:
gt; amostra (1: 6, 10, substituir = TRUE) [1] 2 2 5 5 3 3 5 6 3 5
você diz amostra() para voltar dez valores, cada um na gama 1: 6. Porque cada rolo do dado é independente de qualquer outro rolo do dado, você está amostragem com substituição. Isso significa que você tomar uma amostra da lista e redefinir a lista ao seu estado original (em outras palavras, você coloca o elemento que você acabou atraído de volta para a lista).
Video: Teste-t duas amostras - Excel
Para fazer isso, você adicionar o argumento substituir = TRUE, como no exemplo.
Porque o valor de retorno do amostra() função é um número determinado aleatoriamente, se você tentar esta função repetidamente, você vai obter resultados diferentes de cada vez. Este é o comportamento correto na maioria dos casos, mas às vezes você pode querer obter resultados reproduzíveis cada vez que você executar a função.
Geralmente, isso ocorrerá somente quando você desenvolver e testar seu código, ou se você quer ter certeza de que alguém pode testar seu código e obter os mesmos valores que você fez. Neste caso, é costume para especificar uma chamada valor de semente.
Se você fornecer um valor de semente, a sequência de números aleatórios será redefinido para um estado conhecido. Isso ocorre porque R não cria números aleatórios, mas apenas números pseudo-aleatórios. A sequência pseudo-aleatória é um conjunto de números que, para todos os efeitos práticos, parecem ser aleatória, mas foram gerados por um algoritmo. Ao definir uma semente de partida para um processo de pseudo-aleatória, R sempre o mesmo retorna sequência pseudo-aleatória.
Video: Como fazer ANOVA seguida de teste t não pareado no Excel
Mas se você não definir a semente, R retira o estado atual do gerador de números aleatórios (RNG). No arranque R pode definir uma semente aleatória para inicializar o RNG, mas cada vez que você chamá-lo, R começa a partir do próximo valor na corrente RNG. Você pode ler a Ajuda ?RNG para obter mais detalhes.
Em R, você usa o set.seed () função para especificar o valor inicial das sementes. O argumento para set.seed () é qualquer valor inteiro.
gt; set.seed (1) gt; amostra (1: 6, 10, substituir = TRUE) [1] 2 3 4 6 6 6 2 4 4 1
Se você desenhar uma outra amostra, sem definir uma semente, você tem um conjunto diferente de resultados, como seria de esperar:
gt; amostra (1: 6, 10, substituir = TRUE) [1] 2 2 5 5 3 3 5 6 3 5
Agora, para demonstrar que set.seed () realmente não redefinir o RNG, tente novamente. Mas desta vez, defina a semente mais uma vez:
gt; set.seed (1) gt; amostra (1: 6, 10, substituir = TRUE) [1] 2 3 4 6 6 6 2 4 4 1
Você começa exatamente os mesmos resultados como a primeira vez que você usou set.seed (1).
Você pode usar amostra() para retirar amostras do quadro de dados íris. Neste caso, você pode querer usar o argumento substituir = FALSE. Porque este é o valor padrão da substituir argumento, você não precisa escrevê-lo explicitamente:
gt; set.seed (123) gt; índice lt; - amostra (1: nrow (íris), 5) gt; índice [1] 44 119 62 133 142gt; íris [índice,] Sepal.Length Sepal.Width Petal.Length Petal.Width Species44 5,0 3,5 1,6 0,6 7,7 2,6 6,9 setosa119 2,3 virginica62 5,9 3,0 4,2 1,5 6,4 2,8 5,6 versicolor133 2,2 virginica142 6.9 3.1 5.1 2.3 virginica