Cómo generar una muestra usando la función de muestra en R

La función sample () en R le permite tomar una muestra aleatoria de elementos de un conjunto de datos o un vector, con o sin reemplazo.

La sintaxis básica de la función sample () es la siguiente:

muestra (x, tamaño, reemplazar = FALSO , problema = NULO )

x : un conjunto de datos o vector entre los que elegir la muestra de
tamaño : El tamaño de la muestra
reemplazan : debe muestreo sea con reemplazo? (esto es FALSO por defecto)
problema : un vector de ponderaciones de probabilidad para obtener los elementos del vector que se muestrea

La documentación completa de sample () se puede encontrar aquí .

Los siguientes ejemplos ilustran ejemplos prácticos del uso de sample ().

Generando una muestra a partir de un vector

Supongamos que tenemos el vector a con 10 elementos:

#define el vector a con 10 elementos en él 
a <- c (1, 2, 3, 4, 5, 6, 7, 8, 9, 10)

Para generar una muestra aleatoria de 5 elementos del vector a sin reemplazo, podemos usar la siguiente sintaxis:

#generar una muestra aleatoria de 5 elementos del vector una
 muestra (a, 5)

# [1] 3 1 4 7 5

Es importante tener en cuenta que cada vez que generamos una muestra aleatoria, es probable que obtengamos un conjunto diferente de elementos cada vez.

#generar otra muestra aleatoria de 5 elementos del vector una
 muestra (a, 5)

# [1] 1 8 7 4 2

Si nos gustaría poder replicar nuestros resultados y trabajar con la misma muestra cada vez, podemos usar set.seed () .

# set.seed (algún número aleatorio) para asegurarnos de obtener la misma muestra cada vez
 set.seed (122)

#define el vector a con 10 elementos en él 
a <- c (1, 2, 3, 4, 5, 6, 7, 8, 9, 10)

#generar una muestra aleatoria de 5 elementos del vector una
 muestra (a, 5)

# [1] 10 9 2 1 4

#generar otra muestra aleatoria de 5 elementos del vector una
 muestra (a, 5)

# [1] 10 9 2 1 4

También podemos usar el argumento replace = TRUE para muestrear con reemplazo. Esto significa que se puede elegir cada elemento del vector para que esté en la muestra más de una vez.

# generar una muestra aleatoria de 5 elementos del vector a usando muestreo con muestra de reemplazo
 (a, 5, replace = TRUE)

# 10 10 2 1 6

Generar una muestra a partir de un conjunto de datos

Otro uso común de la función sample () es generar una muestra aleatoria de filas a partir de un conjunto de datos. Para el siguiente ejemplo, generaremos una muestra aleatoria de 10 filas a partir del iris del conjunto de datos R integrado , que tiene 150 filas en total.

#ver las primeras 6 filas del cabezal del conjunto de datos del iris
 (iris)

# Sepal.Length Sepal.Width Petal.Length Petal.Width Especies
# 1 5,1 3,5 1,4 0,2 setosa
# 2 4,9 3,0 1,4 0,2 setosa
# 3 4,7 3,2 1,3 0,2 setosa
# 4 4,6 3,1 1,5 0,2 setosa
# 5 5.0 3.6 1.4 0.2 setosa
# 6 5,4 3,9 1,7 0,4 setosa

#set seed para garantizar que este ejemplo sea replicable 
set.seed (100)

 #elija un vector aleatorio de 10 elementos de las 150 filas en el conjunto de datos de iris
sample_rows <- muestra (1: nrow (iris), 10)
sample_rows

# [1] 47 39 82 9 69 71 117 53 78 25

# elija las 10 filas del conjunto de datos del iris que coincidan con los números de fila anteriores
muestra <- iris [sample_rows,]
muestra

# Sepal.Length Sepal.Width Petal.Length Petal.Width Especies
# 47 5.1 3.8 1.6 0.2 setosa
# 39 4,4 3,0 1,3 0,2 setosa
# 82 5,5 2,4 3,7 1,0 versicolor
# 9 4,4 2,9 1,4 0,2 setosa
# 69 6.2 2.2 4.5 1.5 versicolor
# 71 5.9 3.2 4.8 1.8 versicolor
# 117 6.5 3.0 5.5 1.8 Virginia
# 53 6,9 3,1 4,9 1,5 versicolor
# 78 6.7 3.0 5.0 1.7 versicolor
# 25 4,8 3,4 1,9 0,2 setosa

Tenga en cuenta que si copia y pega el código anterior en su propia consola R, debería obtener exactamente la misma muestra, ya que usamos set.seed (100) para asegurarnos de obtener la misma muestra cada vez.

  • https://r-project.org
  • https://www.python.org/
  • https://www.stata.com/

Deja un comentario

Un gráfico semilogarítmico es un tipo de gráfico que utiliza una escala logarítmica en el eje y y una escala…
statologos comunidad-2

Compartimos información EXCLUSIVA y GRATUITA solo para suscriptores (cursos privados, programas, consejos y mucho más)

You have Successfully Subscribed!