library(pacman)
p_load("base64enc", "htmltools", "mime", "xfun", "prettydoc","readr", "knitr","DT","dplyr", "ggplot2")
En este ejercicio se verá en practica los ejercicios realizados en clase con un dato nuevo de muestreo que es ‘cars’
Usando el set de datos incluidos en R llamados “crimtab”, haremos el ejercicio de muestreo
carros <- data.frame(cars)
dim(carros)
## [1] 50 2
Si queremos muestrear una n de 30
set.seed(123) #numero semilla para obtener los mismos resultados
n <- 30
muestramia <- sample(1:nrow(carros), size = n, replace = FALSE)
#replace sirve para indicar si las muestras se repetiran o no
muestramia
## [1] 31 15 14 3 42 43 37 48 25 26 27 5 40 28 9 29 8 41 7 10 36 19 4 45 17
## [26] 11 32 21 12 49
Ordenar los datos
sort(muestramia, decreasing = FALSE)
## [1] 3 4 5 7 8 9 10 11 12 14 15 17 19 21 25 26 27 28 29 31 32 36 37 40 41
## [26] 42 43 45 48 49
datatable(carros)
Esta es una herramienta del tidyverse
Muestreo aleatorio simple sin reemplazo con dplyr
crimemuestramia2 <- carros %>%
sample_n(size=n, replace = FALSE)
head(crimemuestramia2)
## speed dist
## 1 18 42
## 2 20 56
## 3 23 54
## 4 10 18
## 5 10 34
## 6 20 52
Muestreo aleatorio simple con reemplazo usando dplyr
muestramia2 <- carros %>%
sample_n(size=n, replace = TRUE)
head(muestramia2)
## speed dist
## 1 15 54
## 2 17 50
## 3 13 26
## 4 17 40
## 5 9 10
## 6 20 64
muestramia3 <- carros %>%
sample_n(size=n, speed = Freq)
head(muestramia3)
## speed dist
## 1 12 14
## 2 17 50
## 3 24 70
## 4 17 40
## 5 18 84
## 6 12 24
carros2 <- data.frame(cars)
n <- 50
carro <- sample(1:nrow(carros2), size=n, replace=FALSE)
head(carro)
## [1] 30 15 24 23 43 7
carrochido <- carros2 %>%
sample_frac(0.04)
head(carrochido); dim(carrochido)
## speed dist
## 1 14 26
## 2 11 28
## [1] 2 2
Para este muestro usaremos datos estratificados de 3 especies de lirios iris de la base de datos “iris” de Edgar Anderson.
Referencia: https://archive.ics.uci.edu/ml/datasets/iris
dim(iris)
## [1] 150 5
head(iris)
## Sepal.Length Sepal.Width Petal.Length Petal.Width Species
## 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
levels(as.factor(iris$Species))
## [1] "setosa" "versicolor" "virginica"
lirios <- iris
lirios$id <- 1:150
lirios [1:5, 4:6]
## Petal.Width Species id
## 1 0.2 setosa 1
## 2 0.2 setosa 2
## 3 0.2 setosa 3
## 4 0.2 setosa 4
## 5 0.2 setosa 5