Objetivo

Identificar datos de población y muestra.

Descripción

Se cargan datos de un archivo que representa una población de jugadores de fútbol a nivel mundial y se extraen muestras que permiten observar algunos estadísticos. Las variables de interés son nacionalidad, edad, altura y peso.

La población contiene datos de futbolistas registrados en FIFA. Aquí se hace hincapié en que tal vez no sean todos los futbolistas profesionales, es una lista que se encuentra en portales abiertos con archivos descargables, de manera especiíica el archivo original se encuentra en la direción url siguiente: <https://www.kaggle.com/stefanoleone992/fifa-20-complete-player-dataset?select=players_20.csv>

A partir de la población se construyen varias muestras utilizando la función sample().

Desarrollo

Cargar librerías

library(readr)

Población

En una variable llamada poblacion, se carga un conjunto de datos con distintas variables o columnas.

poblacion <- read.csv("https://raw.githubusercontent.com/rpizarrog/Probabilidad-y-EstadIstica-VIRTUAL-DISTANCIA/main/datos/players_20.csv", encoding = "UTF-8", stringsAsFactors = TRUE)

La población es un conjunto de datos que contiene 18278 observaciones o registros y 104 variables o columnas.

Las variables de interés para este caso serán: nombre, nacionalidad, edad, estatura y peso (‘short_name’, ‘nationality’, ‘age’, ‘height_cm’, ‘weight_kg’).

De la población se extraen únicamente las columnas de interés usando la notación [‘nombre columna 1’, ‘nombre de columna 2’, ‘nombre de columna n’].

La variable en donde se vuelve a dejar el extracto de los datos de población únicamente cn las columnas elegidas, es nuevamente poblacion, es decir se actualiza y se sobreescribe la variable.

Con el argumento la expresión [,c(‘short_name’, ‘nationality’, ‘age’, ‘height_cm’, ‘weight_kg’)], se extraen todas las observaciones o registros con las columnas indicadas de poblacion.

poblacion <- poblacion[,c('short_name', 'nationality', 'age', 'height_cm', 'weight_kg')]

Modificar nombres de columnas

Con la función colnames(poblacion) se modifica a español los nombres de columnas

colnames(poblacion) <- c('nombre', 'nacion', 'edad', 'estatura', 'peso')

Primeros 20 registros

Con la función head(poblacion, 20) indicándole 20 se presentan los primeros 20 registros

head(poblacion)
##              nombre    nacion edad estatura peso
## 1          L. Messi Argentina   32      170   72
## 2 Cristiano Ronaldo  Portugal   34      187   83
## 3         Neymar Jr    Brazil   27      175   68
## 4          J. Oblak  Slovenia   26      188   87
## 5         E. Hazard   Belgium   28      175   74
## 6      K. De Bruyne   Belgium   28      181   70

Ultimos 20 registros

Con la función tail(poblacion, 20) indicándole 20 se presentan los últimos 20 registros

tail(poblacion)
##             nombre              nacion edad estatura peso
## 18273    P. Martin Republic of Ireland   20      188   84
## 18274   Shao Shuai            China PR   22      186   79
## 18275 Xiao Mingjie            China PR   22      177   66
## 18276    Zhang Wei            China PR   19      186   75
## 18277 Wang Haijian            China PR   18      185   74
## 18278   Pan Ximing            China PR   26      182   78

Estructura de los datos

Con la función str() se identifica el tipo de datos, la cantidad de registros y columnas que tienen la población.

Ahora la población tiene le mismo número de registros pero con 5 variables de estudio en lugar de las 50 iniciales.

str(poblacion)
## 'data.frame':    18278 obs. of  5 variables:
##  $ nombre  : Factor w/ 17354 levels "<U+FFFD>. Blanaru","<U+FFFD>. Fara",..: 9773 3210 12708 7904 4505 8745 11813 16600 9783 11649 ...
##  $ nacion  : Factor w/ 162 levels "Afghanistan",..: 6 122 19 135 13 13 58 109 35 44 ...
##  $ edad    : int  32 34 27 26 28 28 27 27 33 27 ...
##  $ estatura: int  170 187 175 188 175 181 187 193 172 175 ...
##  $ peso    : int  72 83 68 87 74 70 85 92 66 71 ...

Describir los datos

Con la función summary() se encuentran los parámetros de la población.

Las medidas que genera summary() para datos numéricos o cuantitativos son la media, mediana, valores máximos y mínimos, cuartiles al 25%, 50% y 75% que serán medidas que se estudiarán por separado en siguientes casos.

Con datos cualitativos categóricos o denotados como factores en R, se identifican la cantidad de ocasiones que hay de cada uno, es decir la frecuencia. De igual forma la función identifica si existen datos como NA que se interpreta como datos vacíos.

summary(poblacion)
##           nombre            nacion           edad          estatura    
##  J. Rodríguez:   11   England  : 1667   Min.   :16.00   Min.   :156.0  
##  Paulinho    :    9   Germany  : 1216   1st Qu.:22.00   1st Qu.:177.0  
##  J. García   :    8   Spain    : 1035   Median :25.00   Median :181.0  
##  J. Hernández:    7   France   :  984   Mean   :25.28   Mean   :181.4  
##  J. Williams :    7   Argentina:  886   3rd Qu.:29.00   3rd Qu.:186.0  
##  J. Clarke   :    6   Brazil   :  824   Max.   :42.00   Max.   :205.0  
##  (Other)     :18230   (Other)  :11666                                  
##       peso       
##  Min.   : 50.00  
##  1st Qu.: 70.00  
##  Median : 75.00  
##  Mean   : 75.28  
##  3rd Qu.: 80.00  
##  Max.   :110.00  
## 

Muestra

Se identifica como \(N\) como el total de registros de la población y se obtiene mediante la función nrow().

N <- nrow(poblacion)
N
## [1] 18278

Muestra1

Se extra con la función sample() una muestra de la población digamos el \(10\% \text{ de 18278 equivale a }1828 \ registros\)

Se identifica a \(n\) como la cantidad de registros de la muestra.

Con la función round() se redondea a valor entero el resultado de sacar el 10% de \(N\).

n <- round(N * 0.10)
n
## [1] 1828

Ahora se determina una muestra de los datos con la función sample(), con los parámetro adecuados se le dice que a partir de población se deben extraer \(n\) registros y que no se repitan, es decir que sean diferentes.

La variable de interés es edad por lo que la muestra es un vector numérico.

muestra1 <- sample(x = poblacion$edad, size = n, replace = FALSE)

Descripción de muestra1

str(muestra1)
##  int [1:1828] 33 30 24 29 23 23 27 23 25 22 ...
summary(muestra1)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##    17.0    22.0    25.0    25.3    29.0    40.0

Media de edad muestra1

media1 <- round(summary(muestra1)[4],2)
media1
## Mean 
## 25.3

Muestra2

Se extra con la función sample() una muestra de la población digamos el \(20\% \text{ de 18278 equivale a }3656\ registros\).

n <- round(N * 0.20)
n
## [1] 3656

Se determina otra muestra de los datos con la función sample(), el nombre ahora es muestra2.

muestra2 <- sample(x = poblacion$edad, size = n, replace = FALSE)

Descripción de muestra2

str(muestra2)
##  int [1:3656] 26 24 27 26 22 21 20 22 21 28 ...
summary(muestra2)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##   16.00   21.00   25.00   25.25   29.00   40.00

Media de edad muestra2

media2 <- round(summary(muestra2)[4],2)
media2
##  Mean 
## 25.25

Muestra3

Se extra con la función sample() una muestra de la población digamos el \(30\% \text{ de 18278 equivale a }5483 \ registros\)

Se determina otra tercera muestra de los datos con la función sample(), el nombre ahora es muestra3.

n <- round(N * 0.30)
n
## [1] 5483

Se determina otra muestra de los datos con la función sample(), el nombre ahora es muestra3.

muestra3 <- sample(x = poblacion$edad, size = n, replace = FALSE)

Descripción de muestra3

str(muestra3)
##  int [1:5483] 27 29 22 23 32 29 28 26 33 23 ...
summary(muestra3)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##   16.00   22.00   25.00   25.36   29.00   41.00

Media de edad muestra3

media3 <- round(summary(muestra3)[4],2)
media3
##  Mean 
## 25.36

Interpretación

Se construyen tres muestras a partir de una población que contiene \(18278\) registros y \(5\) variables de interés.

La muestra1 contiene \(1828\) registros, la muestra2 tiene \(3656\) registros y la muestra3 tiene \(5483\) registros.

Si la variable de interés es la edad, la media de la edad de la población es \(25.28\) años, los valores de la media de edad de cada muestras son: de la muestra1 su media de edad es 25.3, de la muestra2 su media de edad es 25.25 y de la muestra3 su media de edad es 25.36.

Con lo anterior se entiende que los estadísticos de una muestra deben acerarse en mucho a los parámetros poblacionales. ejemplo de ello, los valores de la media de cada muestra se acercan a los valores de la media de la población. \(\text{media de muestra} \approx \text{media poblacion}\)