Práctica 2

ESTADÍSTICA DESCRIPTIVA: REPRESENTACIONES GRÁFICAS

Objetivos

  • Utilizar BrailleR
  • Resumir, ordenar y analizar conjuntos de datos
  • Calcular diversas características de una variable estadística univariante
  • Representar gráficamente la distribución de frecuencias
  • Realizar análisis exploratorio de datos.

Introducción al Análisis Descriptivo

En esta práctica tomaremos un primer contacto con las técnicas estadísticas que se utilizan para ordenar, analizar y representar un conjunto de datos, con el fin de describir apropiadamente sus características. El primer paso en el análisis de datos, una vez introducidos los mismos, es realizar un análisis descriptivo o análisis exploratorio de datos. Los principales objetivos de un análisis descriptivo o  análisis exploratorio de datos son la descripción y la síntesis de los datos. Para ello, los datos se organizan en tablas, se calculan medidas que describen sus características más importantes y se realizan representaciones gráficas.

Este análisis inicial proporciona una idea de la forma que tiene la distribución de las observaciones y permite obtener estadísticos de tendencia central (media, mediana y moda), de dispersión (varianza, desviación típica, rango), de forma (asimetría, curtosis), de posición (percentiles), así como gráficos de barras, de sectores e histograma.

R dispone de un amplio conjunto de herramientas para el análisis descriptivo de un conjunto de datos.

Tabla de Frecuencias

Para crear tablas de frecuencia en R se emplea la función table o la función prop.table, dependiendo de si la tabla muestra las frecuencias absolutas o las frecuencias relativas. La sintaxis de estas órdenes es la siguiente:

> table(x)  # para frecuencias absolutas

> prop.table(tab)   # para las frecuencias relativas

La principal diferencia entre las dos funciones reside en el tipo de los argumentos que necesita cada una.

  • table construye la tabla de frecuencias absolutas a partir de la variable que recibe como argumento
  • prop.table recibe como argumento una tabla o una matriz que representa una tabla de frecuencias absolutas, y a partir de ella construye la tabla de frecuencias relativas asociada. Es decir, prop.table recibe como argumento el resultado que devuelve la función table.

NOTA

Recordar que si no se tiene instalado el paquete BrailleR hay que instalarlo. En la Práctica 1 se puede encontrar la forma de hacerlo.

Recordar que cada vez que iniciemos R hay que hay que cargar el paquete a nuestro espacio de trabajo mediante la sentencia

> library(“BrailleR”)

Al cargar el paquete BrailleR, en la pantalla se indica si necesita crear un directorio que contendrá sus archivos. Es conveniente usar uno en nuestro directorio personal, ya que permanece después de reiniciar R.

Do you wish to create the ‘C:\Users\Usuario\Documents\MyBrailleR\’ directory?
Do you want to create the (almost) permanent folder?
1: Yes: create C:\Users\Usuario\Documents\MyBrailleR\ now
2: No,not this time

Selection: 1
Using the permanent folder for this session and every session from now onwards.
You can delete the folder at any time.
The BrailleR.View option has been set to TRUE.
Consult the help page for GoSighted() to see how settings can be altered.
You may wish to use the GetGoing() function as a quick way of getting started.

y utilizar el programa JAWS 2019,  esta versión del lector de pantalla cada vez que hay una fórmula, un símbolo matemático…, detecta que es contenido matemático y lee completamente la fórmula. Si se pulsa Enter, abre un visualizador en el que se puede recorrer la fórmula con las flechas derecha/izquierda, y con arriba/abajo para analizarla por niveles.

NOTA: Al instalar el paquete BrailleR puede mostrarse a siguiente salida

> install.packages(“BrailleR”)
Installing package into
‘C:/Users/Usuario/Documents/R/win-library/3.6’
(as ‘lib’ is unspecified)
— Please select a CRAN mirror for use in this session —
Warning message:
package ‘BrailleR’ is not available (for R version 3.6.1)

En este caso, hasta que se solucione el problema y el paquete vuelva a estar disponible. Hay que instalar BrailleR de forma local.  Para ello:

1. descarga este archivo

2. Elegir en R: Paquete/ Install package(s) from local files (la última opción).

3. Elegir el archivo que ha descargado y Abrirlo.

O bien descargar el archivo de: (https://cran.r-project.org/src/contrib/Archive/BrailleR/) y seguir los pasos indicados anteriormente.

Ejemplo1:

En la siguiente tabla se recogen 29 datos sobre el peso, altura, velocidad y color

\( \begin{matrix}  \hline {\bf peso} & {\bf altura} &  {\bf velocidad} &  {\bf color} \\  \hline  7.2 &   50 &  10.3 &   Blanco  \\  8.5 &   66  &  10.3  & Amarillo \\   9.8 &     73   & 10.2 &   Verde \\ 6.5 &     72 &    16.4 &   Verde \\  7.5 &     81 & 18.8 &  Verde \\  10.1 &   73 &  19.7 &   Verde \\ 11 &      66 &           15.6 &        Blanco \\ 11 &      75 &           21.2 &        Amarillo \\ 11.1 &   70 &    22.6 &   NA \\ 11.2 &   75 &           19.9 &        Blanco\\ 11.3 &   69 &           24.2 &        Amarillo \\ 11.4  &  76 &           21 &           Blanco \\ 11.4  &  76 &           21.4 &        Verde \\ 11.7  &  69 &           21.3 &        Verde \\ 12  &     75 &           NA & Amarillo \\ 12.9  &  64 &           22.2 &        Amarillo \\ 12.9  &  55 &   33.8 &        Blanco \\ 10.3  &  76 &           27.4 &        Amarillo \\ 9.7  &    71 &           25.7 &        Verde \\ 10.8  &  64 &           24.9 &        Verde \\ 11  &     78 &  23.1 &        Amarillo \\ 10.2  &  70 &           31.7 &        Amarillo \\ 10.5  &  74 &  36.3 &   Verde \\ 6.5 &     72 &           38.3 &        Verde \\ 6.3 &     77 &           42.6 &        Verde \\ 7.3 &     51 &           55.4 &        Blanco \\ 7.5 &     62 &           NA &          Blanco \\ 7.9 &     60 &    58.3 &   Amarillo \\ 8.2 &     70 &    NA &    Verde \\ \hline \end{matrix} \)

Tabla1. Datos del ejemplo 1

Nota: Se puede realizar: a) en la Consola de R y b) En el editor de R

a) En la Consola de R, como lo hacemos a continuación

> datos = read.table(“C:/Users/Usuario/Desktop/misdatos.txt”, header = TRUE)

o bien

> setwd(“C:/Datos”)   # situarse en el directorio de trabajo

> datos = read.table(“misdatos.txt”, header = TRUE)

> datos
peso altura velocidad    color
1   7.2     50      10.3   Blanco
2   8.5     66      10.3 Amarillo
3   9.8     73      10.2    Verde
4   6.5     72      16.4    Verde
5   7.5     81      18.8    Verde
6  10.1     73      19.7    Verde
7  11.0     66      15.6   Blanco
8  11.0     75      21.2 Amarillo
9  11.1     70      22.6     <NA>
10 11.2     75      19.9   Blanco
11 11.3     69      24.2 Amarillo
12 11.4     76      21.0   Blanco
13 11.4     76      21.4    Verde
14 11.7     69      21.3    Verde
15 12.0     75        NA Amarillo
16 12.9     64      22.2 Amarillo
17 12.9     55      33.8   Blanco
18 10.3     76      27.4 Amarillo
19  9.7     71      25.7    Verde
20 10.8     64      24.9    Verde
21 11.0     78      23.1 Amarillo
22 10.2     70      31.7 Amarillo
23 10.5     74      36.3    Verde
24  6.5     72      38.3    Verde
25  6.3     77      42.6    Verde
26  7.3     51      55.4   Blanco
27  7.5     62        NA   Blanco
28  7.9     60      58.3 Amarillo
29  8.2     70        NA    Verde

b) En el Editor de  R. Para ello primero abrimos un nuevo script: Elegimos en el menú principal: Archivo/Nuevo script y escribimos

datos = read.table(“misdatos.txt”, header = TRUE)  # Se recomienda situarse en el directorio donde están los archivos de los datos
datos

Figura 1: Consola de R y Editor de datos de R

Señalizamos todo en el Editor de R y pulsamos las teclas Ctrl +R para ejecutarlo. Mostrándose lo siguiente en la Consola de R

> datos = read.table(“misdatos.txt”, header = TRUE)
> datos
peso altura velocidad    color
1   7.2     50      10.3   Blanco
2   8.5     66      10.3 Amarillo
3   9.8     73      10.2    Verde
4   6.5     72      16.4    Verde
5   7.5     81      18.8    Verde
6  10.1     73      19.7    Verde
7  11.0     66      15.6   Blanco
8  11.0     75      21.2 Amarillo
9  11.1     70      22.6     <NA>
10 11.2     75      19.9   Blanco
11 11.3     69      24.2 Amarillo
12 11.4     76      21.0   Blanco
13 11.4     76      21.4    Verde
14 11.7     69      21.3    Verde
15 12.0     75        NA Amarillo
16 12.9     64      22.2 Amarillo
17 12.9     55      33.8   Blanco
18 10.3     76      27.4 Amarillo
19  9.7     71      25.7    Verde
20 10.8     64      24.9    Verde
21 11.0     78      23.1 Amarillo
22 10.2     70      31.7 Amarillo
23 10.5     74      36.3    Verde
24  6.5     72      38.3    Verde
25  6.3     77      42.6    Verde
26  7.3     51      55.4   Blanco
27  7.5     62        NA   Blanco
28  7.9     60      58.3 Amarillo
29  8.2     70        NA    Verde

> tabla_color = table(datos$color)
> tabla_color
Amarillo   Blanco    Verde
9        7       12

> prop.table(tabla_color)
Amarillo    Blanco     Verde
0.3214286 0.2500000 0.4285714

>  tabla_peso = table(datos$peso)
>  tabla_peso
6.3  6.5  7.2  7.3  7.5  7.9  8.2  8.5  9.7  9.8 10.1 10.2 10.3 10.5 10.8   11 11.1 11.2 11.3 11.4 11.7   12 12.9
   1    2    1    1    2    1    1    1    1    1    1    1    1    1    1    3    1    1    1    2    1    1    2

> prop.table(tabla_peso)
      6.3        6.5        7.2        7.3        7.5        7.9        8.2        8.5        9.7        9.8       10.1       10.2       10.3       10.5       10.8
0.03448276 0.06896552 0.03448276 0.03448276 0.06896552 0.03448276 0.03448276 0.03448276 0.03448276 0.03448276 0.03448276 0.03448276 0.03448276 0.03448276 0.03448276
        11       11.1       11.2       11.3       11.4       11.7         12       12.9
0.10344828 0.03448276 0.03448276 0.03448276 0.06896552 0.03448276 0.03448276 0.06896552 

Representaciones gráficas

R ofrece una gran variedad de gráficos, el comando demo(graphics) muestra dichos gráficos. Atendiendo al tipo de datos vamos a utilizar varios tipos de gráficos.

    • Variables cualitativas o variables cuantitativas de tipo discreto: Se pueden considerar gráficos de sectores o gráficos de barras, los cuales se obtienen en R mediante las funciones pie y barplot, respectivamente. Los argumentos más importantes de estas funciones son:

pie(x, labels = names(x), clockwise = FALSE, init.angle = if(clockwise) 90 else 0,  col = NULL, main = NULL)

barplot(x, horiz = FALSE, col = NULL, main = NULL, sub = NULL, xlab = NULL, ylab = NULL)

donde

x es un vector con las frecuencias de las observaciones. Igualmente, puede ser una tabla de frecuencia (de las obtenidas con table o prop.table)

labels es un vector de cadenas de caracteres que indican los nombres de cada una de las categorías que aparecen en el gráfico de sectores

clockwise es un argumento lógico que indica si los sectores se dibujan en sentido horario (clockwise = TRUE) o en sentido antihorario (clockwise = FALSE, que es la opción por defecto)

init.angle es un valor numérico que indica el ángulo (en grados) en el que se sitúa el primer sector. Por defecto, el primer sector empieza a dibujarse a los 90 grados (- a las 12 en punto -, cuando clockwise es igual a TRUE) o a los 0 grados (- a las 3 en punto -, cuando clockwise es igual a FALSE)

horiz es un argumento lógico que indica si las barras del gráfico de barras se dibujan de forma vertical (horiz = FALSE, que es la opción por defecto) u horizontal (horiz = TRUE)

col es un vector en el que se indican los colores de las barras o los sectores del gráfico

main y sub son cadenas de caracteres en la que se especifican el título y el subtítulo del gráfico

xlab e ylab son cadenas de caracteres en las que se especifican los nombres de los ejes X e Y.

  • Variables cuantitativas: Los gráficos que se suelen emplear con más frecuencia son el histograma, el diagrama de tallos y hojas y el diagrama de caja y bigotes. En R, se utilizan las órdenes hist, stem y boxplot para la obtención de histogramas, de diagramas de tallos y hojas y de diagramas de caja y bigotes, respectivamente. Éstas son las principales opciones de estas funciones:

hist(x, breaks = “Sturges”, right = TRUE, col = NULL, main = paste(“Histogram of” , xname))

stem(x)

boxplot(x, range = 1.5, col = NULL, main = NULL)

donde, en este caso,

x es el vector de valores de la variable a partir de los cuales se dibujará el gráfico.

breaks indica la forma en la que se calcularán los intervalos en el histograma. Las opciones disponibles para este parámetro son “Sturges” (que es la opción por defecto) “Scott” y “FD” “Freedman-Diaconis“. Para más información sobre estos métodos, así como la fórmula que emplea cada uno de ellos para determinar el número de intervalos, se puede consultar el siguiente enlace (en inglés): http://www.mas.ncl.ac.uk/~nlf8/teaching/mas1343/notes/chap4-5.pdf

range es un valor numérico que determina la extensión de los bigotes de la caja. Para un valor positivo de range, los bigotes se extienden hasta el último dato que no supere 1.5 veces la longitud de la caja (el rango intercuartílico). Para un valor de 0, los bigotes se extienden hasta el dato más lejano

right es un argumento lógico que indica si los intervalos son cerrados por la izquierda y abiertos por la derecha (en cuyo caso, right = TRUE, que es la opción por defecto) o viceversa (right = FALSE).

Las opciones col y paste funcionan igual que en los gráficos de barras y sectores.

Gráficos con BrailleR         

El desarrollo de software estadístico ha ayudado a la evolución, especialización y eficiencia en el análisis exploratorio y confirmatorio a través de gráficos, por lo que debemos hacer una mención especial a ellos. Para las personas ciegas no hay una manera fácil de interpretar la imagen real. Actualmente se puede solucionar mediante:

  • Una solución viene en términos de gráficos táctiles, por lo que cualquier estudiante o profesional puede leer un gráfico solo con el conocimiento requerido para cualquier otro compañero vidente. Aunque es la forma más efectiva de enseñar gráficos, ya que es intuitivo, es casi imposible imprimir gráficos táctiles para cada código que evaluamos y ha sido necesario crear un enfoque diferente.
  • Un gráfico se ve rápidamente a simple vista, pero la interpretación solo viene con el conocimiento estadístico. Partimos de la noción de que un gráfico es una representación de alguna estadística o técnica resumida, descriptiva o paramétrica, y que la información es totalmente independiente de la visualización. La visualización  de gráficos a través de una salida legible en pantalla es una de las tareas que Godfrey enfocó al crear BrailleR ([1]).  De esta forma, el programa R ha abierto puertas de accesibilidad  a los análisis estadísticos de las personas ciegas, mediante un paquete adicional llamado BrailleR, http://r-resources.massey.ac.nz/BrailleR. Este paquete permite que la información gráfica esté disponible en forma de texto, mediante una traducción lingüística del gráfico. Para ello, a cada gráfico que este implementado en BrailleR hay que añadirle la orden

> VI()

[1] J.R. Godfrey and M. Loots, “Advice From Blind Teachers on How to Teach Statistics to Blind Students”. Journal of Statistics Education, vol. 23, doi:10.1080/10691898.2015.11889746, 2015.

http://r-resources.massey.ac.nz/BrailleR: Created and maintained by Jonathan Godfrey
Institute of Fundamental Sciences, Massey University,
Palmerston North, New Zealand)

Ejemplos:

> pie(table(datos$color), col = c(“yellow”, “white”, “green”), main = “Diagrama de sectores para la variable color”)

Se muestra el siguiente gráfico de sectores para la variable Color:

Figura 1: Diagrama de sectores (pie(table(datos$color), col = c("yellow", "white", "green"), main = "Diagrama de sectores para la variable color"))Figura 2: Diagrama de sectores

Nota: El gráfico diagrama de sectores no está implementado en BrailleR

> barplot(table(datos$color), col=c(“yellow”, “white”, “green”), xlab=”Color”, ylab=”Frecuencias absolutas”,main =”Diagrama de barras para la variable Color”)

> y.bar = barplot(table(datos$color), col=c(“yellow”, “white”, “green”), xlab=”Color”, ylab=”Frecuencias absolutas”,main =”Diagrama de barras para la variable Color”)

Se muestra el siguiente gráfico de barras para la variable Color:

Figura 2: Diagrama de barras (barplot(table(datos$color), col=c("yellow", "white", "green"), xlab="Color", ylab="Frecuencias absolutas",main ="Diagrama de barras para la variable Color"))Figura3: Diagrama de barras

> VI(y.bar)
The summary of each variable is
V1: Min. 0.7   1st Qu. 1.3   Median 1.9   Mean 1.9   3rd Qu. 2.5   Max. 3.1 

> y.hist = hist(table(datos$peso), col = “yellow”, main = “Histograma para la variable peso”, xlab=”Pesos”, ylab=”Frecuencia”)

Se muestra el siguiente histograma para la variable Peso

Figura 3: Histograma ( hist(table(datos$peso), col = "yellow", main = "Histograma para la variable peso", xlab="Pesos", ylab="Frecuencia"))Figura 4: Histograma

> VI(y.hist)
This is a histogram, with the title: Histogram of table(datos$peso)
“table(datos$peso)” is marked on the x-axis.
Tick marks for the x-axis are at: 1, 1.5, 2, 2.5, and 3
There are a total of 23 elements for this variable.
Tick marks for the y-axis are at: 0, 5, 10, and 15
It has 4 bins with equal widths, starting at 1 and ending at 3 .
The mids and counts for the bins are:
mid = 1.25  count = 18
mid = 1.75  count = 4
mid = 2.25  count = 0
mid = 2.75  count = 1

> stem(table(datos$altura))

The decimal point is at the |
1 | 0000000000
1 |
2 | 00000
2 |
3 | 000

> y.box = boxplot(datos$peso, xlab=”Pesos”, main = “Cajas y bigotes para la variable peso”)

Se muestra el siguiente boxplot (Cajas y bigotes) de la variable Peso

Figura 4: Caja con bigotes (boxplot(datos$peso, xlab="Pesos", main = "Cajas y bigotes para la variable peso"))Figura. 5: Caja con bigotes

> VI(y.box)
This graph has a boxplot printed vertically
with the title:
“” appears on the x-axis.
“” appears on the y-axis.
Tick marks for the y-axis are at: 7, 8, 9, 10, 11, 12, and 13
This variable  has 29 values.
There are no outliers marked for this variable
The whiskers extend to 6.3 and 12.9 from the ends of the box,
which are at 7.9 and 11.2
The median, 10.3 is 73 % from the lower end of the box to the upper end.
The upper whisker is 1.06 times the length of the lower whisker.

Características o Medidas de una variable estadística

En las secciones anteriores se han planteado técnicas gráficas, tablas estadísticas y  representaciones gráficas, que han proporcionado una representación visual de las variables estadísticas. Dichas técnicas gráficas nos dan una idea de la composición de la población en estudio. En esta sección vamos a resumir todos los datos recogidos en una tabla estadística en unos valores, medidas numéricas, llamadas Características o Medidas que representen o sinteticen el conjunto de datos. Son medidas que proporcionan información sobre puntos importantes de la distribución, completando la información que nos ha proporcionado las tablas estadísticas y las representaciones gráficas.

Estudiaremos las Características o medidas de posición, de dispersión, y de forma

Medidas de posición

En muchas ocasiones el interés reside en localizar el centro de la distribución (para lo cual se calculan las medidas de tendencia central), existen casos en los que los puntos que se desean estudiar distan mucho de este centro (en cuyo caso se recurre al cálculo de las medidas de tendencia no central).

Algunas de las medidas más populares dentro del grupo de medidas de tendencia central son la media, la mediana y la moda. Las funciones que calculan las dos primeras medidas en R son mean y median.

mean (x, na.rm = FALSE)

median (x, na.rm = FALSE)

 donde:

x:  vector con los valores de la variable

na.rm: un argumento lógico que indica si hay que eliminar los valores faltantes del conjunto de datos.

Las observaciones faltantes o no disponibles de un conjunto de datos son codificadas en R como NA (que son las iniciales de Not Available). Cuando una función de R encuentra algún NA entre los valores de las observaciones que trata de analizar devuelve como resultado NA, indicando así que los cálculos no se han podido realizar. No obstante, asignando el valor TRUE al argumento na.rm se pueden eliminar los valores faltantes y obtener así un valor para la media o la mediana, basado en las observaciones restantes.

En cuanto a la moda, R no tiene implementada ninguna función que la calcule. Pero aprovechando la potencia del programa, podemos encargarnos nosotros mismos de definir una función que calcule la moda de un conjunto de datos. Así, tendremos que copiar y pegar el siguiente código en la consola de R:

Mode = function(x) {
ux =  unique(x)
ux[which.max(tabulate(match(x, ux)))]
}

Una vez hecho esto, podremos calcular la moda de un conjunto de datos tal y como sigue:

Mode (x)

En el caso de que existan varias modas (es decir, cuando estemos ante una distribución plurimodal), esta función mostrará únicamente la menor de ellas (o la primera en orden alfabético, si se está analizando una variable cualitativa).

Entre las medidas de posición de tendencia no central, los cuantiles figuran entre las más utilizadas. Para obtener los cuantiles de una variable en R se emplea la función quantile.

quantile(x, probs = seq(0, 1, 0.25), na.rm = FALSE)

donde:

x: vector que incluye los valores de la variable

seq: Argumento que indica los cuantiles que se van a calcular. Por defecto, se muestran los siguiente cuantiles:

  • 0, que coincide con el valor mínimo
  • 25, que coincide con el primer cuartil
  • 50, que coincide con el segundo cuartil y con la mediana
  • 75, que coincide con el tercer cuartil
  • 100, que coincide con el valor máximo

na.rm: un argumento lógico que indica si hay que eliminar los valores faltantes del conjunto de datos.

El mínimo y el máximo de un conjunto de datos, además de poder calcularse como los cuantiles 0 y 100, pueden obtenerse utilizando las funciones de R min y max.

min (x, na.rm = FALSE)

max (x, na.rm = FALSE)

Medidas de dispersión

Tratan  de cuantificar la variabilidad o esparcimiento de los datos informando acerca de la mayor o menor representatividad de las medidas de tendencia central.

Entre las medidas de dispersión más utilizadas se encuentran la cuasi-varianza, la cuasi-desviación típica y el rango intercuartílico, que en R se calculan a través de las funciones var, sd e IQR, respectivamente.

var(x, na.rm = FALSE)

sd(x, na.rm = FALSE)

IQR(x, na.rm = FALSE)

Los dos argumentos principales de estas funciones son x, que es el vector con los valores de la variable que se está estudiando y na.rm que, como ya se ha comentado, indica si los valores faltantes han de ser eliminados antes del análisis.

Como se ha especificado, las funciones var y sd no calculan la varianza y la desviación típica de una variable, sino su cuasi-varianza y su cuasi-desviación típica. En caso de necesitar la varianza o la desviación típica, basta con multiplicar el resultado de las funciones var y sd por (n – 1)/n, siendo n el número total de datos con el que se está trabajando.

A partir de las funciones anteriores se pueden calcular otras medidas, como el coeficiente de variación de Pearson o el rango. El coeficiente de variación se emplea para comparar la representatividad de la media entre distintas variables y se obtiene dividiendo la desviación típica de una variable entre su media. Por su parte, el rango es una medida de dispersión muy sencilla que se obtiene como la diferencia entre los valores máximo y mínimo.

Medidas de forma

Como su propio nombre indica, estas medidas se centran en el estudio de la forma que presenta una distribución a través del análisis de la simetría y la curtosis o el apuntamiento de la distribución en cuestión.

Para determinar la simetría de una distribución se emplea la función skewness, contenida en el paquete e1071. En R, un paquete no es más que un conjunto de funciones con un propósito común. Para poder utilizar las funciones incluidas en un determinado paquete, es necesario instalar el paquete y, posteriormente cargarlo.

Para instalar el paquete, utilizamos la orden install.packages(“nombre_del paquete”). En nuestro caso, tenemos que teclear

> install.packages(“e1071″) # cuidado con las comillas (tecla”)

Se muestra el CRAN mirror, donde elegimos como idioma Spain (Madrid)

Pulsamos OK, y se muestra el siguiente mensaje

— Please select a CRAN mirror for use in this session —
probando la URL ‘http://cran.es.r-project.org/bin/windows/contrib/3.2/e1071_1.6-7.zip’
Content type ‘application/zip’ length 814301 bytes (795 KB)
downloaded 795 KB
package ‘e1071’ successfully unpacked and MD5 sums checked
The downloaded binary packages are in
        C:\Users\Usuario\AppData\Local\Temp\RtmpOcmE1f\downloaded_packages
Una vez que el paquete se ha instalado de forma correcta en nuestro ordenador no será necesario volver a instalarlo nunca más, siempre que no cambiemos la versión de R. Tras instalar el paquete, procederemos a cargarlo mediante la función library.

> library(“e1071”)

Warning message:
package ‘e1071’ was built under R version 3.2.2

A diferencia de la instalación, la carga de los paquetes es necesaria cada vez que se inicia una nueva sesión de R. Una vez instalado y cargado el paquete e1071, ya podemos utilizar la función skewness sin problema. Su sintaxis es:

skewness(x, na.rm = FALSE)

donde

x: es el vector que incluye los valores de la variable

na.rm: es un argumento lógico que indica si hay que eliminar los valores faltantes del conjunto de datos.

De forma análoga, para estudiar la curtosis de un conjunto de datos emplearemos la función kurtosis que también está contenida en el paquete e1071.

kurtosis(x, na.rm = FALSE)

donde los parámetros x y na.rm se definen forma similar al caso anterior.

Algunas funciones resumen

 Existen funciones en R que calculan, a la vez, algunas de las medidas que se han descrito hasta ahora, summary es un buen ejemplo de este tipo de funciones, ya que cuando se aplica a una variable cuantitativa devuelve el mínimo, el máximo, la media, la mediana y los cuartiles primero y tercero de la variable. La sintaxis de esta función es la siguiente:

summary(object)

object: es el objeto (la variable en nuestro caso) del cual queremos obtener el resumen.

> datos = read.table(“C:/Users/Usuario/Desktop/misdatos.txt”, header = TRUE)

o bien

> setwd(“C:/directorio de trabajo”)

> datos = read.table(“misdatos.txt”, header = TRUE)

> mean(datos$peso)
[1] 9.782759

> median(datos$peso)
[1] 10.3

> min(datos$peso)
[1] 6.3

> max(datos$peso)
[1] 12.9

> quantile(datos$peso, probs = c(0.25, 0.75))
25%  75%
7.9 11.2

> summary(datos$peso)
Min. 1st Qu.  Median    Mean 3rd Qu.    Max.
6.300   7.900  10.300   9.783  11.200  12.900

> var(datos$peso, na.rm = TRUE)
[1] 3.945764

> sd(datos$peso, na.rm = TRUE)
[1] 1.986395

> IQR(datos$peso, na.rm = TRUE)
[1] 3.3

> install.packages(“e1071”)   # Es necesario si aún no se ha instalado
> library(e1071)
> skewness(datos$peso)
[1] -0.3492441

> skewness(datos$peso, na.rm = TRUE)
[1] -0.3492441

> kurtosis(datos$peso, na.rm = TRUE)
[1] -1.231833

Análisis exploratorio unidimensional con BrailleR

La función UniDesc() realiza automáticamente un análisis exploratorio unidimensional, y muestra una salida HTML legible en la pantalla.

> y = datos$peso
> y
[1]  7.2  8.5  9.8  6.5  7.5 10.1 11.0 11.0 11.1 11.2 11.3 11.4 11.4 11.7 12.0
[16] 12.9 12.9 10.3  9.7 10.8 11.0 10.2 10.5  6.5  6.3  7.3  7.5  7.9  8.2
> UniDesc(y)

Muestra la siguiente salida en HTML. 

Esta salida muestra un resumen de medidas estadísticas básicas, gráficos invariantes básicos, contrastes y gráficos de normalidad y contrastes de curtosis y simetrías.

 




Ejercicios

Ejercicios Guiados

Ejercicio guiado

Considérese el siguiente conjunto de datos que contiene información acerca de la raza, la edad, el peso y la altura de 10 personas:

\( \begin{matrix}  \hline {\bf Raza } & {\bf Edad } &  {\bf Peso } &  {\bf Altura } \\  \hline   Banca &    24 &           58 &           156 \\   Negra &    26 &           62 &           175 \\  Blanca &   62 &           61 &           169   \\  Blanca &   31 &           67 &           171  \\  Negra &    30 &           71 &           159  \\  Negra &    41 &           69 &           160  \\  Negra  &   51  &         NA   &         158  \\  Blanca   & 23    &        73   &         178  \\  Blanca  &  28  &          56  &          168   \\  Blanca  &  30  &          82  &          166  \\  \hline \end{matrix} \)

Tabla2. Datos del Ejercicio Guiado

a) Crea 4 variables, de manera que cada una contenga los datos de una columna. Después, crea un data frame llamado Datos con las 4 variables que acabas de crear

b) Realiza una tabla de frecuencias absolutas y otra de frecuencias relativas para la variable Raza. Almacena las tablas anteriores en dos variables y llámalas abso y rela

c) Representa la variable Raza mediante un diagrama de barras y un diagrama de sectores. Incluye un título adecuado para cada gráfico y colorea las barras y los sectores de colores diferentes

d) Para la variable Edad, realiza un histograma y un diagrama de caja y bigotes considerando la opción range = 1.5. Incluye un título apropiado para cada gráfico y colorea las barras del histograma de color verde. ¿Existe algún valor atípico en esta variable? Reduce el valor del argumento range hasta 1. ¿Varían las conclusiones?

e) Realiza un resumen de la variable Altura mediante la orden summary. Comprueba que las medidas que proporciona summary coinciden con las medidas calculadas de forma individual usando su función específica

f) Calcula el peso medio de los individuos y proporciona, al menos, dos medidas que indiquen la dispersión de esta variable

g) ¿Qué variable es más homogénea: la edad o la altura?

h) Estudia la asimetría y la curtosis de la variable altura.


Ejercicio Guiado (Resuelto)

Recordar que cada vez que iniciemos R hay que hay que cargar el paquete a nuestro espacio de trabajo mediante la sentencia

> library(“BrailleR”)

a) Crea 4 variables, de manera que cada una contenga los datos de una columna. Después, crea un data frame llamado Datos con las 4 variables que acabas de crear.

En primer lugar, se tiene que tener en cuenta el tipo de las variables, pues ello determina la manera en que hay que crearlas. En este ejemplo, la variable Raza es un factor con dos categorías mientras que el resto de variables son numéricas. De las tres variables numéricas, Peso es la única con observaciones faltantes.

> Raza =  factor(c(“Blanca”, “Negra”, “Blanca”, “Blanca”, “Negra”, “Negra”, “Negra”, “Blanca”, “Blanca”, “Blanca”), levels = c(“Blanca”, “Negra”))

> Raza
[1] Blanca Negra  Blanca Blanca Negra  Negra  Negra  Blanca Blanca Blanca
Levels: Blanca Negra

Nota: El signo + al inicio de una línea en la consola de R indica que la orden anterior no se ha terminado de escribir por completo y que continúa en esa línea.

> Edad =  c(24, 26, 62, 31, 30, 41, 51, 23, 28, 30)
> Peso =  c(58, 62, NA, 67, 71, 69, NA, 73, 56, 82)
> Altura =  c(156, 175, 169, 171, 159, 160, 158, 178, 168, 166)

Agrupamos las 4 variables en un data frame, al que vamos a llamar Datos:

> Datos =  data.frame (Raza, Edad, Peso, Altura)

Comprobemos que los datos se han guardado correctamente.

> Datos

     Raza Edad Peso Altura
1  Blanca   24   58    156
2   Negra   26   62    175
3  Blanca   62   NA    169
4  Blanca   31   67    171
5   Negra   30   71    159
6   Negra   41   69    160
7   Negra   51   NA    158
8  Blanca   23   73    178
9  Blanca   28   56    168
10 Blanca   30   82    166

b) Realiza una tabla de frecuencias absolutas y otra de frecuencias relativas para la variable Raza. Almacena las tablas anteriores en dos variables y llámalas abso y rela

> abso = table(Datos$Raza)
> abso

Blanca  Negra
     6      4

> rela = prop.table(abso)
> rela

Blanca  Negra
   0.6    0.4

c) Representa la variable Raza mediante un diagrama de barras y un diagrama de sectores. Incluye un título adecuado para cada gráfico y colorea las barras y los sectores de colores diferentes

> y.bar = barplot(abso, col = c(“red”, “blue”), main = “Diagrama de barras para la variable Raza”)

 

Fig. 5: Diagrama de barrasFigura 6: Diagrama de barras

> VI(y.bar)
The summary of each variable is
V1: Min. 0.7   1st Qu. 1   Median 1.3   Mean 1.3   3rd Qu. 1.6   Max. 1.9  

> pie(abso, col = c(“white”, “black”), main = “Diagrama de sectores para la variable Raza”)

Fig. 6: Gráfico de sectoresFigura 7: Gráfico de sectores

d) Para la variable Edad, realiza un histograma y un diagrama de caja y bigotes considerando la opción range = 1.5. Incluye un título apropiado para cada gráfico y colorea las barras del histograma de color verde. ¿Existe algún valor atípico en esta variable? Reduce el valor del argumento range hasta 1. ¿Varían las conclusiones?

> y.hist =hist(Datos$Edad, col = “green”, main = “Histograma para la variable Edad”, xlab = “Edades”, ylab = “Frecuencia”)

Fig. 7: HistogramaFigura 8: Histograma

> VI(y.hist)
This is a histogram, with the title: Histogram of Datos$Edad
“Datos$Edad” is marked on the x-axis.
Tick marks for the x-axis are at: 20, 30, 40, 50, 60, and 70
There are a total of 10 elements for this variable.
Tick marks for the y-axis are at: 0, 1, 2, 3, 4, 5, and 6
It has 5 bins with equal widths, starting at 20 and ending at 70 .
The mids and counts for the bins are:
mid = 25  count = 6
mid = 35  count = 1
mid = 45  count = 1
mid = 55  count = 1
mid = 65  count = 1

> y.box1 = boxplot(Datos$Edad, main = “Cajas y bigotes para la variable Edad (range = 1.5)”)

Fig. 8: Caja con Bigotes (range = 1.5)Figura 9: Caja y Bigotes (range = 1.5)

En este caso no se aprecia ningún valor atípico en el diagrama de caja y bigotes, ya que no aparece ningún valor más allá de los bigotes.

> VI(y.box1)
This graph has a boxplot printed vertically
with the title:
“” appears on the x-axis.
“” appears on the y-axis.
Tick marks for the y-axis are at: 30, 40, 50, and 60
This variable  has 10 values.
There are no outliers marked for this variable
The whiskers extend to 23 and 62 from the ends of the box,
which are at 26 and 41
The median, 30 is 27 % from the lower end of the box to the upper end.
The upper whisker is 7 times the length of the lower whisker.

> y.box2 = boxplot(Datos$Edad, main = “Cajas y bigotes para la variable Edad (range = 1)”)

Fig. 9: Caja con Bigotes (range = 1)Figura 10: Caja con Bigotes (range = 1)

Cuando se reduce el valor de range a 1 se observa que existe un dato más allá del bigote superior, el cual se considera como atípico.

> VI( y.box2)
This graph has a boxplot printed vertically
with the title:
“” appears on the x-axis.
“” appears on the y-axis.
Tick marks for the y-axis are at: 30, 40, 50, and 60
This variable  has 10 values.
There are no outliers marked for this variable
The whiskers extend to 23 and 62 from the ends of the box,
which are at 26 and 41
The median, 30 is 27 % from the lower end of the box to the upper end.
The upper whisker is 7 times the length of the lower whisker.

e) Realiza un resumen de la variable Altura mediante la orden summary. Comprueba que las medidas que proporciona summary coinciden con las medidas calculadas de forma individual usando su función específica

Si aplicamos la función summary a la variable Altura, obtenemos el siguiente resultado

> summary(Datos$Altura)
Min. 1st Qu.  Median    Mean 3rd Qu.    Max.
  156.0   159.2   167.0   166.0   170.5   178.0

Calculemos cada medida por separado

> min(Datos$Altura)
[1] 156

> max(Datos$Altura)
[1] 178

> quantile(Datos$Altura, probs = c(0.25, 0.75))
25%    75%
159.25 170.50

> mean(Datos$Altura)
[1] 166

> median(Datos$Altura)
[1] 167

f) Calcula el peso medio de los individuos y proporciona, al menos, dos medidas que indiquen la dispersión de esta variable

Para calcular el peso medio de los individuos, tenemos que tener en cuenta que la variable Peso incluye dos valores faltantes entre sus observaciones. Este hecho tiene que ser indicado estableciendo como TRUE el valor del parámetro na.rm

> mean(Datos$Peso, na.rm = TRUE)
[1] 67.25

El peso medio de los individuos es de 67,25 kg.

Como medidas de dispersión, se van a calcular la cuasi-varianza y el recorrido intercuartílico.

> var(Datos$Peso, na.rm = TRUE)
[1] 72.5

> IQR(Datos$Peso, na.rm = TRUE)
[1] 10.5

g) ¿Qué variable es más homogénea: la edad o la altura?

Para determinar la homogeneidad de una variable (o, lo que es lo mismo, la representatividad de su media), calculamos el coeficiente de variación para cada una de ellas, el cual se define como el cociente entre la desviación típica y la media de la variable.

Vamos a comenzar con la variable Edad. En primer lugar, calculemos la edad media de los individuos.

>  media_Edad = mean(Datos$Edad)
>  media_Edad
[1] 34.6
A continuación obtenemos la desviación típica. Para ello, calcularemos en primer lugar la varianza de la variable Edad mediante la función var, que recordemos calcula la cuasi-varianza de una variable.

> var_Edad = 9/10 * var(Datos$Edad)
> var_Edad
[1] 148.04

Una vez obtenida la varianza, la desviación típica se obtiene como su raíz cuadrada positiva.

> dt_Edad =  sqrt(var_Edad)
> dt_Edad
[1] 12.16717

Por último, calculamos el coeficiente de variación de la Edad y mostramos su valor.

> CV_Edad =  dt_Edad/media_Edad
> CV_Edad
[1] 0.3516523

Repetimos el mismo proceso con la variable Altura.

>  media_Altura =  mean(Datos$Altura)
>  var_Altura =  9/10 * var(Datos$Altura)
> dt_Altura =  sqrt(var_Altura)
> CV_Altura =  dt_Altura/media_Altura
> CV_Altura
[1] 0.04310492

La variable más homogénea es la variable Altura, ya que presenta un coeficiente de variación más próximo a 0.

h) Estudia la asimetría y la curtosis de la variable altura.

> skewness(Datos$Altura)
[1] 0.1272481

> kurtosis(Datos$Altura)
[1] -1.584453

> y = Datos$Altura
> y
[1] 156 175 169 171 159 160 158 178 168 166
> UniDesc(y)

Muestra la siguiente salida en HTML.

Editor de R



Ejercicios Propuestos

Ejercicio Propuesto 1

 Las siguientes tablas recogen información sobre el diámetro, la altura, el volumen del tronco y la variedad de distintos cerezos en dos regiones distintas: RegiónA y RegiónB

\( \begin{matrix}  \hline  & &  {\bf Región A} &  \\  \hline  {\bf Diámetro } & {\bf Altura } &  {\bf Volumen } &  {\bf Variedad } \\  \hline 8.3          & 70 &  10.3 &   Blanco  \\  8.6 &     65 &       10.3 &   Amarillo \\  8.8 &     63 &       10.2       & Rosa \\  10.5 &   72 &       16.4       & Rosa \\  10.5       & 81 &  18.8       & Rosa \\  10.8       & 83       & 19.7   & Rosa \\  11 &       66           & 15.6   & Blanco \\  11 &       75           & NA     & Amarillo \\  11.1       & 80       & 22.6   & Rosa \\  11.2       & 75       &  19.9  &  Blanco \\  11.3       & 79      & 24.2   & Amarillo \\  11.4 &   76 &       21           & Blanco \\  11.4 &   76 &       21.4       & Rosa \\  11.7 &   69 &       21.3       & Rosa \\  12           & 75 &  19.1       & Amarillo \\  12.9 &   74           & 22.2   & Amarillo  \\  12.9 &   85 &       33.8       & Blanco  \\  \hline \end{matrix} \)

\( \begin{matrix}  \hline  & &  {\bf Región B} &  \\  \hline  {\bf Diámetro } & {\bf Altura } &  {\bf Volumen } &  {\bf Variedad } \\  \hline 13.3  &  86 &       27.4 &   Amarillo  \\ 13.7  &  71 &       25.7 &   Rosa  \\ 13.8  &  64  &      24.9  &  Rosa  \\ 14   &     78  &      NA  &    Amarillo  \\ 14.2  &  80  &      31.7  &  Amarillo   \\ 14.5   & 74  &      36.3  &  Rosa  \\ 16  &      72  &      38.3  &  Rosa  \\ 16.3       & 77       & 42.6 &              Rosa  \\ 17.3       & 81      & 55.4   & Blanco  \\ 17.5       & 82 &  55.7       & Blanco  \\ 17.9 &   80 &       58.3       & Amarillo \\ 18 &       80 &       NA         & Rosa  \\ 18 &       80 &       51           & Blanco  \\ 20.6 &   87 &       77           & Rosa  \\   \hline \end{matrix} \)

 Tabla3. Datos del Ejercicio Propuesto 1

Se pide:

a) Crear dos conjuntos de datos, de nombre RegA y RegB que contengan la información recogida en las tablas anteriores

b) Representar la variable Variedad mediante un diagrama de sectores en cada región. Incluir un título descriptivo en cada gráfico y colorear los sectores de blanco, amarillo o rosa

c) Representar la variable Altura mediante un histograma en cada región

d) ¿Existe algún dato atípico en la variable Diámetro en la región A? ¿Y en la región B?

e) ¿Cuál es el valor máximo del 30% de los diámetros más pequeños de los cerezos de la región A? ¿Y el valor mínimo del 25% de las alturas mayores de los cerezos de la región B?

f) ¿Dónde es la variable volumen más homogénea: en la región A o en la región B?

g) ¿En qué región presentan los cerezos una altura media mayor? ¿En qué región presentan los cerezos una altura mediana menor?

h) Estudia la asimetría y la curtosis de la variable Diámetro en la región A.


Ejercicio Propuesto 1  (Resuelto)

a) Crear dos conjuntos de datos, de nombre RegA y RegB que contengan la información recogida en las tablas anteriores

> library(“BrailleR”)

> diam = c(8.3, 8.6, 8.8, 10.5, 10.5, 10.8, 11, 11, 11.1, 11.2, 11.3, 11.4, 11.4, 11.7, 12, 12.9, 12.9)
> alt = c(70, 65, 63, 72, 81, 83, 66, 75, 80, 75, 79, 76, 76, 69, 75, 74, 85)
> vol = c(10.3, 10.3, 10.2, 16.4, 18.8, 19.7, 15.6, NA, 22.6, 19.9, 24.2, 21, 21.4, 21.3, 19.1, 22.2, 33.8)
> var =  c(“B”, “A”, “R”, “R”, “R”, “R”, “B”, “A”, “R”, “B”, “A”, “B”, “R”, “R”, “A”, “A”, “B”)
> RegA =  data.frame (diam, alt, vol, var)
> RegA
diam alt  vol var
1   8.3  70 10.3   B
2   8.6  65 10.3   A
3   8.8  63 10.2   R
4  10.5  72 16.4   R
5  10.5  81 18.8   R
6  10.8  83 19.7   R
7  11.0  66 15.6   B
8  11.0  75   NA   A
9  11.1  80 22.6   R
10 11.2  75 19.9   B
11 11.3  79 24.2   A
12 11.4  76 21.0   B
13 11.4  76 21.4   R
14 11.7  69 21.3   R
15 12.0  75 19.1   A
16 12.9  74 22.2   A
17 12.9  85 33.8   B

 Repetir para la Región B

b) Representar la variable Variedad mediante un diagrama de sectores en cada región. Incluir un título descriptivo en cada gráfico y colorear los sectores de blanco, amarillo o rosa

Diagrama de sectores de Variedad (Región A)

Prp1_img1Figura 11: Diagrama de Sectores de Var (Región A)

Diagrama de sectores de Variedad para la Región B

Fig. 11: Diagrama de Sectores Región BFigura 12: Diagrama de Sectores de Var (Región B)

c) Representar la variable Altura mediante un histograma en cada región

Histograma de Altura en la Región A

Prp1_img3Figura 13: Histograma de la Altura (Región A)

This is a histogram, with the title: Histogram of RegA$alt
“RegA$alt” is marked on the x-axis.
Tick marks for the x-axis are at: 60, 65, 70, 75, 80, and 85
There are a total of 17 elements for this variable.
Tick marks for the y-axis are at: 0, 1, 2, 3, 4, and 5
It has 5 bins with equal widths, starting at 60 and ending at 85 .
The mids and counts for the bins are:
mid = 62.5  count = 2
mid = 67.5  count = 3
mid = 72.5  count = 5
mid = 77.5  count = 4
mid = 82.5  count = 3

Histograma de la Altura para la Región B

Fig. 13: Histograma de la Altura (Región B)Figura 14: Histograma de la Altura (Región B)

This is a histogram, with the title: Histogram of RegB$alt
“RegB$alt” is marked on the x-axis.
Tick marks for the x-axis are at: 60, 65, 70, 75, 80, 85, and 90
There are a total of 14 elements for this variable.
Tick marks for the y-axis are at: 0, 1, 2, 3, 4, 5, and 6
It has 6 bins with equal widths, starting at 60 and ending at 90 .
The mids and counts for the bins are:
mid = 62.5  count = 1
mid = 67.5  count = 0
mid = 72.5  count = 3
mid = 77.5  count = 6
mid = 82.5  count = 2
mid = 87.5  count = 2

d) ¿Existe algún dato atípico en la variable Diámetro en la región A? ¿Y en la región B?

Para responder a esta pregunta, vamos a calcular los gráficos de caja y bigotes para la variable Diámetro en ambas regiones.

Boxplot de Diámetro para la Región A

Fig. 14: Caja y Bigotes de diámetro (Región A)Figura 15: Caja y Bigotes de diámetro (Región A)

This graph has a boxplot printed vertically
with the title:
“” appears on the x-axis.
“” appears on the y-axis.
Tick marks for the y-axis are at: 65, 70, 75, 80, and 85
This variable  has 17 values.
There are no outliers marked for this variable
The whiskers extend to 63 and 85 from the ends of the box,
which are at 70 and 79
The median, 75 is 56 % from the lower end of the box to the upper end.
The upper whisker is 0.86 times the length of the lower whisker.

Boxplot de Diámetro de la Región B

Fig. 15: Caja y Bigotes de diámetro (Región B)Figura 16: Caja y Bigotes de diámetro (Región B)

This graph has a boxplot printed vertically
with the title:
“” appears on the x-axis.
“” appears on the y-axis.
Tick marks for the y-axis are at: 14, 16, 18, and 20
This variable  has 14 values.
There are no outliers marked for this variable
The whiskers extend to 13.3 and 20.6 from the ends of the box,
which are at 14 and 17.9
The median, 16.15 is 55 % from the lower end of the box to the upper end.
The upper whisker is 3.86 times the length of the lower whisker.

Hay cuatro valores atípicos (datos más allá de los extremos de los bigotes) para la variable Diámetro de la región A.

e) ¿Cuál es el valor máximo del 30% de los diámetros más pequeños de los cerezos de la región A? ¿Y el valor mínimo del 25% de las alturas mayores de los cerezos de la región B?

Los valores que nos están pidiendo son el percentil 30 de la variable Diámetro en la región A y el percentil 75 de la variable Altura en la región B, respectivamente.

Percentil 30 de Diámtero en la Región A = 10.74

Percentil 75 de la variable Altura en la región B = 80.75

f) ¿Dónde es la variable volumen más homogénea: en la región A o en la región B?

Para contestar a esta pregunta, vamos a calcular el coeficiente de variación para la variable Volumen en cada una de las regiones. Recordemos que la fórmula para el cómputo del coeficiente de variación (CV) es

\( CV =  \frac{\sigma} {\overline{|x|}} \)

Fórmula 1: Coeficiente de Variación de Pearson

Por lo tanto,

CV de Volumen de la Región A = 0.3106773

CV de Volumne de la Región B = 0.3670137

Atendiendo a los resultados que hemos obtenido, podemos afirmar que la variable volumen es más homogénea en la región A, dado que es en esta región donde el coeficiente de variación para la variable volumen está más próximo a 0.

g) ¿En qué región presentan los cerezos una altura media mayor? ¿En qué región presentan los cerezos una altura mediana menor?

Media y mediana de la altura de la región A (74.35294 y 75, respectivamente) y de la región B (78 y 80, respectivamente)

Como se puede apreciar, tanto la altura media como la altura mediana es mayor en la región B.

h) Estudia la asimetría y la curtosis de la variable Diámetro en la región A.

Asimetría de Diámetro en la Región A = -0.5608155

Kurtosis de Diámtero de la Región A = -0.4475198

Como el coeficiente de asimetría es menor que 0, concluiremos que la distribución de la variable Diámetro en la región A es asimétrica a la izquierda. Igualmente, dado que el coeficiente de curtosis es también negativo, la distribución de esta variable es menos apuntada que la distribución normal es decir, platicúrtica.

> y = RegA$diam
> y
[1]  8.3  8.6  8.8 10.5 10.5 10.8 11.0 11.0 11.1 11.2 11.3 11.4 11.4 11.7 12.0
[16] 12.9 12.9
> UniDesc(y)

Muestra la siguiente salida en HTML

EJERCICIO PROPUESTO 1 RESUELTO

Ejercicio Propuesto 2 (Grado en Psicología)

Un estudio con 30 sujetos se investigaron las siguientes variables sexo (1: hombre; 2: mujer), Edad, Estado civil (1: soltero; 2: casado; 3: otro) y Cociente Intelectual (CI).

\(
\begin{matrix} \hline
{\bf Suj } & {\bf sexo } & {\bf edad } & {\bf EC } & {\bf CI }\\
\hline
1 &      1          & 16 &           1 &      100 \\ 2 &   2 &      17 &   1 &      103  \\ 3       & 1 &  18 &   1 &      107  \\ 4 &   2 &      19 &   1 &      110  \\ 5 &   1  &     16 &   1 &      99  \\ 6 &   2  &     16  &  1  &     104  \\ 7  &  1  &     17  &  1  &     104  \\ 8       & 2  &            17  &  1  &     99 \\   9  & 1  &            18  &  1  &     100   \\  10 & 2 &      18 &   1 &      100 \\ 11     & 1 &  18 &   1 &      101 \\ 12 & 2          & 19  &          2  &     103 \\ 13 & 1  &     20  &  2  &     107  \\ 14     & 2  &            21  &  2  &     110  \\ 15  &            1  &     14  &  1  &     99  \\ \hline    \end{matrix} \)

\( \begin{matrix} \hline
{\bf Suj } & {\bf sexo } & {\bf edad } & {\bf EC } & {\bf CI }\\
\hline 16 & 1 &      15       & 1  & 101  \\ 17  &            1          & 16  &          1          & 102  \\ 18  &            1  &     16  &  1  &     102  \\ 19  &            1  &     17  &  1  &     103  \\ 20  &            1  &     17  &  1  &     103  \\ 21     &  1  & 20  &  3  &     104   \\  22  &            1  &     19  &  2  &     102  \\ 23     & 1 &  18  &  1  &     100  \\  24     & 2  &            16  &  1  &     105 \\  25 & 2  &     15  &  1  &     109 \\  26  &            2  &     14  &  1  &     110  \\  27     & 2 & 15 &   1 &      108 \\  28 & 2  &     16  &  1  &     105  \\ 29  &            2  &     17  &  1  &     104 \\ 30  &            2  &     21  &  2  &     103  \\ \hline
\end{matrix}
\)

Tabla 4: Datos del Ejercicio Propuesto 2

Se pide:

a) Defina las variables del estudio, su nivel de medida, su tipo y sus modalidades y almacena el contenido de la tabla en las variables correspondientes seleccionando el tipo de variable adecuado en cada caso.

b) Realice la distribución de frecuencias de cada variable

c) Realice un gráfico para cada una de las variables.

EJERCICIO PROPUESTO 2 RESUELTO

Ejercicio Propuesto 3 (Grado en Psicología)

Un investigador estaba interesado en conocer la relación entre frecuencia cardíaca (FC) y percepción subjetiva del esfuerzo (PSE). Para ello realizó mediciones a 30 deportistas que practican diversos deportes (individuales o de equipo) a los que con un pulsómetro estableció su FC basal (medida por la mañana) y máxima (medida en una competición) y también midió la PSE tras el partido (en una escala muy alta, alta, media, baja y muy baja). Finalmente les preguntó la edad y el sexo de cada uno de ellos. Los datos de cada sujeto se muestran a continuación.

\(
\begin{matrix} \hline
{\bf Suj } & {\bf sexo } & {\bf edad } & {\bf FCb } & {\bf PSE}  & {\bf Deporte} \\
\hline 1 &    1 &      22 &    66 &    148 &  2 &      1 \\ 2 &    1  &     24  &   56  &   137      & 1 &  1  \\ 3 &    1 &      25 &    64  &   168  & 4  &     1  \\ 4 &    1  &     23  &   63  &   170  & 5  &     1  \\ 5  &   2  &     19  &   62  &   165  & 4  &     1  \\ 6  &   1  &     18  & 62          168      & 3 &  1  \\ 7  &   2  &     20        & 61 &            165 &  3 &      2 \\ 8        & 2 &  22  &   60  &   160  &             3          & 2  \\ 9 &    2  &     24  &   58  &   145  &             2  &     2  \\ 10  & 1  &     25  &   57  &   156  & 4  &     2  \\ 11  &            2  &     27 &    67 &    189 &  5 &      2  \\ 12 &  1  &     24 &    65 &    182 &  4  &     2  \\ 13 &  2 &      23        & 78 &            190 &  5 &      2 \\ 14 &  2  &     22  &   45 &    135  & 1  &     1  \\ 15  &            2          & 28 &            54 &    140  & 2  &     1  \\ \hline \end{matrix} \) \(
\begin{matrix} \hline
{\bf Suj } & {\bf sexo } & {\bf edad } & {\bf FCb } & {\bf PSE}  & {\bf Deporte} \\
\hline 16 &  2  &     19  &   54  &   156  &             3          & 2  \\ 17  & 1  &     20  &   45  &   136  & 1  &     2 \\  18  & 1 &      22 &    50 &    154 &  3 &      2 \\ 19 &  1  &     24  &   51 &    187 &  5 &      2 \\ 20  & 2 &      25 &    52 &    145 &  1 &      2  \\ 21 &  2 &      26 &    60 &    163 &  4 &      2 \\ 22 &  1 &      24 &    59 &    154 &  3 &      1 \\ 23 &  2  &     20  &   60  &   160  & 4  &     1 \\ 24 &  1  &     21  &   55  &   145  & 2  &     1 \\ 25      & 2 &  21 &    54 &    137 &  1 &      1 \\ 26 &  1 &      22  &   53  &   136  & 1  &     1 \\ 27 &  2  &     29  &   52  &   134  &             1          & 1  \\ 28  &            2 &      23 &    51 &    130 &  1 &      1 \\ 29 &  1  &     23  &   55 &    135 &  2 &      2 \\ 30 &  1 &      24 &    58 &    140 &  2 &      2 \\ \hline
\end{matrix}
\)

Tabla 5: Datos del Ejercicio Propuesto 3

Variables y códigos: Sexo (1: hombre; 2: mujer), Edad, FCb (Frecuencia cardíaca basal), FCm (Frecuencia cardíaca máxima), PSE (Percepción Subjetiva del Esfuerzo; 1: muy baja; 2: baja; 3: media; 4: alta y 5: muy alta), Deporte (1: individual; 2: de equipo).

Se pide:

1.- Defina cada variable: Escala de medida, Tipo y modalidades o valores

2.- Realice una distribución para cada variable y un gráfico adecuado.

EJERCICIO PROPUESTO 3 RESUELTO

Autores: Ana María Lara Porras,  Beatriz Cobo Rodríguez y David Molina Muñoz. Universidad de Granada  (2019)