Para esta nueva sesión de ejercicios los objetivos principales son
poder construir y analizar tablas de frecuencias sobre variables
cuantitativas y cualitativas
En primera instancia se construye la tabla de frecuencia de la
variable “Especie” del iris, esta varible corresponde a una del tipo
cualitativa
Para este trabajo se utilizaran las siguientes librerias
datos <- data.frame(iris) #se cargan los datos
library(ggplot2)
library(plotly)
##
## Attaching package: 'plotly'
## The following object is masked from 'package:ggplot2':
##
## last_plot
## The following object is masked from 'package:stats':
##
## filter
## The following object is masked from 'package:graphics':
##
## layout
library("BHH2")
fi = -as.numeric(sort(-table(datos$Species))) #frecuencia absoluta
fac= cumsum(fi) #frecuencia acumulada
fri= as.numeric(fi/sum(fi))*100 #frecuencia relativa
frac= cumsum(fri) #frecuencia relativa acumulada
clases= c("setosa", "versicolor", "virginica")
frecuencia= data.frame(clases, fi,fac,fri=round(fri, 2),frac=round(frac,2))
knitr::kable(frecuencia)
| setosa |
50 |
50 |
33.33 |
33.33 |
| versicolor |
50 |
100 |
33.33 |
66.67 |
| virginica |
50 |
150 |
33.33 |
100.00 |
Se sigue con la construcción de la tabla de frecuencia de la
variable “Largo del petalo” del iris, esta varible corresponde a una del
tipo cuantitativa
fi2 = as.numeric(table(datos$Petal.Length)) #frecuencia absoluta
fac2= cumsum(fi2) #frecuencia acumulada
fri2= as.numeric(fi2/sum(fi2))*100 #frecuencia relativa
frac2 = cumsum(fri2) #frecuencia relativa acumulada
largo_petalo= sort(unique(datos$Petal.Length))
frecuencia_largo= data.frame(largo_petalo, fi2, fac2, fri2=round(fri2, 2), frac2= round(frac2, 2))
knitr::kable(head(frecuencia_largo, 100))
| 1.0 |
1 |
1 |
0.67 |
0.67 |
| 1.1 |
1 |
2 |
0.67 |
1.33 |
| 1.2 |
2 |
4 |
1.33 |
2.67 |
| 1.3 |
7 |
11 |
4.67 |
7.33 |
| 1.4 |
13 |
24 |
8.67 |
16.00 |
| 1.5 |
13 |
37 |
8.67 |
24.67 |
| 1.6 |
7 |
44 |
4.67 |
29.33 |
| 1.7 |
4 |
48 |
2.67 |
32.00 |
| 1.9 |
2 |
50 |
1.33 |
33.33 |
| 3.0 |
1 |
51 |
0.67 |
34.00 |
| 3.3 |
2 |
53 |
1.33 |
35.33 |
| 3.5 |
2 |
55 |
1.33 |
36.67 |
| 3.6 |
1 |
56 |
0.67 |
37.33 |
| 3.7 |
1 |
57 |
0.67 |
38.00 |
| 3.8 |
1 |
58 |
0.67 |
38.67 |
| 3.9 |
3 |
61 |
2.00 |
40.67 |
| 4.0 |
5 |
66 |
3.33 |
44.00 |
| 4.1 |
3 |
69 |
2.00 |
46.00 |
| 4.2 |
4 |
73 |
2.67 |
48.67 |
| 4.3 |
2 |
75 |
1.33 |
50.00 |
| 4.4 |
4 |
79 |
2.67 |
52.67 |
| 4.5 |
8 |
87 |
5.33 |
58.00 |
| 4.6 |
3 |
90 |
2.00 |
60.00 |
| 4.7 |
5 |
95 |
3.33 |
63.33 |
| 4.8 |
4 |
99 |
2.67 |
66.00 |
| 4.9 |
5 |
104 |
3.33 |
69.33 |
| 5.0 |
4 |
108 |
2.67 |
72.00 |
| 5.1 |
8 |
116 |
5.33 |
77.33 |
| 5.2 |
2 |
118 |
1.33 |
78.67 |
| 5.3 |
2 |
120 |
1.33 |
80.00 |
| 5.4 |
2 |
122 |
1.33 |
81.33 |
| 5.5 |
3 |
125 |
2.00 |
83.33 |
| 5.6 |
6 |
131 |
4.00 |
87.33 |
| 5.7 |
3 |
134 |
2.00 |
89.33 |
| 5.8 |
3 |
137 |
2.00 |
91.33 |
| 5.9 |
2 |
139 |
1.33 |
92.67 |
| 6.0 |
2 |
141 |
1.33 |
94.00 |
| 6.1 |
3 |
144 |
2.00 |
96.00 |
| 6.3 |
1 |
145 |
0.67 |
96.67 |
| 6.4 |
1 |
146 |
0.67 |
97.33 |
| 6.6 |
1 |
147 |
0.67 |
98.00 |
| 6.7 |
2 |
149 |
1.33 |
99.33 |
| 6.9 |
1 |
150 |
0.67 |
100.00 |
Como esta variable es cuantitativa se pueden agrupar los datos en
intervalos, quedando de la siguiente manera
n = length(largo_petalo)
k = round(1+ 3.3 * log(n))
h = round((max(largo_petalo) - min(largo_petalo))/k)
intervalos = hist(datos$Petal.Length, plot = FALSE, breaks = k)$breaks
intervalos = paste("(",intervalos[1:(length(intervalos)-1)], "-", intervalos[2:(length(intervalos))], "]", sep = "")
intervalos[1] = "[4-5]"
fi3= hist(datos$Petal.Length, plot=FALSE, breaks = k)$counts #frecuencia absoluta
fac3= cumsum(fi3) #frecuencia acumulada
fri3= as.numeric(fi3/sum(fi3))*100 #frecuencia relativa
frac3 = cumsum(fri3) #frecuencia relativa acumulada
frecuencia_petalo= data.frame(largo = intervalos, fi3, fac3, fri3= round(fri3, 2), frac3= round(frac3, 2))
knitr::kable(frecuencia_petalo)
| [4-5] |
37 |
37 |
24.67 |
24.67 |
| (1.5-2] |
13 |
50 |
8.67 |
33.33 |
| (2-2.5] |
0 |
50 |
0.00 |
33.33 |
| (2.5-3] |
1 |
51 |
0.67 |
34.00 |
| (3-3.5] |
4 |
55 |
2.67 |
36.67 |
| (3.5-4] |
11 |
66 |
7.33 |
44.00 |
| (4-4.5] |
21 |
87 |
14.00 |
58.00 |
| (4.5-5] |
21 |
108 |
14.00 |
72.00 |
| (5-5.5] |
17 |
125 |
11.33 |
83.33 |
| (5.5-6] |
16 |
141 |
10.67 |
94.00 |
| (6-6.5] |
5 |
146 |
3.33 |
97.33 |
| (6.5-7] |
4 |
150 |
2.67 |
100.00 |
Preguntas
¿Qué diferencia aprecia entre ambos tipos de representaciones?
Esta pregunta hace referencia a los graficos, si nos referimos a las
diferencia de las representaciones de la variable cualitativa se puede
que la primera diferencia es que en el gráfico de barras se expresan
porcentajes, mientras que en el de barras solo los datos en si, esto
lleva a la otra diferencia que en el de barras extien los “ejes”
mientras que en el de pie no y por úlitmo en el de pie se puede observar
mejor la proporción entre las variables.
Ahora refiriendonos a la variable cuantitativa la primera diferencia
a simple vista es que en el histograma nos indica la frecuencia de la
variable, mientras que en el de puntos solo estan los valores que toma
la variable y no la frecuencia. Por otro lado el histograma puede servir
para gráficar variables cuantitativas y cualitativas, mientras que el de
punto solo serviría para variables cuantitativas.