Muestreo en estadística

Al elegir una muestra aleatoria se espera conseguir que sus propiedades sean extrapolables a la población. Este proceso permite ahorrar recursos, y a la vez obtener resultados parecidos a los que se alcanzarían si se realizase un estudio de toda la población. En las investigaciones llevadas por empresarios y de la medicina se usa muestreo extensivamente en recoger información sobre poblaciones.

Cabe mencionar que para que el muestreo sea válido y se pueda realizar un estudio adecuado (que consienta no solo hacer estimaciones de la población sino estimar también los márgenes de error correspondientes a dichas estimaciones), debe cumplir ciertos requisitos. Nunca podremos estar enteramente seguros de que el resultado sea una muestra representativa, pero sí podemos actuar de manera que esta condición se alcance con una probabilidad alta.

En el muestreo, si el tamaño de la muestra es más pequeño que el tamaño de la población, se puede extraer dos o más muestras de la misma población. Al conjunto de muestras que se pueden obtener de la población se denomina espacio muestral. La variable que asocia a cada muestra su probabilidad de extracción, sigue la llamada distribución muestral.

Muestreo aleatorio simple

Para lo cual usaremos datos de crímenes

crime <- data.frame(crimtab)

dimensiones de la matriz

dim(crime)
## [1] 924   3

Selección de la muestra * Muestreo Aleatorio Simple (M.A.S.) Tomar una muestra de 30 de la población

set.seed(1)
n <- 10
muestramia <- sample(1:nrow(crime), size=n, replace=TRUE)
muestramia
##  [1] 836 679 129 509 471 299 270 187 307 597

Asignar los elementos de la muestra al marco de datos

crimemuestramia <- crime[muestramia, ]
head(crimemuestramia)
##     Var1   Var2 Freq
## 836 13.1  190.5    0
## 679   10 182.88    0
## 129  9.6 149.86    0
## 509  9.8 172.72    0
## 471 10.2 170.18    0
## 299  9.8 160.02    0

Ahora usamos tidyverse dplyr

library(dplyr)
## 
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
## 
##     filter, lag
## The following objects are masked from 'package:base':
## 
##     intersect, setdiff, setequal, union
set.seed(1)
crimemuestramia2 <- crime %>%
  sample_n(size=n, replace=FALSE)
head(crimemuestramia2)
##   Var1   Var2 Freq
## 1 13.1  190.5    0
## 2   10 182.88    0
## 3  9.6 149.86    0
## 4  9.8 172.72    0
## 5 10.2 170.18    0
## 6  9.8 160.02    0

Muestreo ponderado (pesos)

crimemuestramia3 <- crime %>%  # eso se llama "pipe"
  sample_n(size=n, weight=Freq)
head(crimemuestramia3)
##   Var1   Var2 Freq
## 1 11.4 172.72   10
## 2 11.5 172.72   25
## 3   11 154.94   12
## 4 10.5 149.86    1
## 5 12.1 170.18   28
## 6 10.8 162.56   10

-> Terminar ejercicio y además realizar los mismos muestreos para los datos demográficos

https://rpubs.com/jigbadouin/muestreo

library(pacman)
p_load('dplyr','DT','prettydoc','readxl')
 setwd("~/PYE1213")
 entidad <- read_excel("entidad.xls")
 datatable(entidad)
poblacion <- data.frame(entidad[,2:5])
dim(poblacion)
## [1] 34  4

Seleccion Muestra

n <- 30
primeramuestra <- sample(1:nrow(poblacion),size=n,replace=FALSE)
primeramuestra
##  [1] 25 34 12 15  1 20  3  6 10 26 27 31 29 22 32 24  8 21  9  7 18 19 33 23 28
## [26] 13 14 16  2  5
Muestra1 <- poblacion[primeramuestra,]
datatable(Muestra1)

Muestreo sin remplazo

segundamuestra <- poblacion %>%
  sample_n(size=n,replace=FALSE)
datatable(segundamuestra)