datos <- c(138, 164, 150, 132, 144, 125, 149, 157, 146, 158, 140, 147, 136, 148, 152, 144, 168, 126, 138, 176, 163, 119, 154, 165, 146, 173, 142, 147, 135, 153, 140, 135, 161, 145, 135, 142, 150, 156, 145, 128 )
n <- length(datos)
n
## [1] 40
mean(datos)
## [1] 146.8
sort(datos)
## [1] 119 125 126 128 132 135 135 135 136 138 138 140 140 142 142 144 144
## [18] 145 145 146 146 147 147 148 149 150 150 152 153 154 156 157 158 161
## [35] 163 164 165 168 173 176
frecuencia <- table(datos)
frecuencia
## datos
## 119 125 126 128 132 135 136 138 140 142 144 145 146 147 148 149 150 152
## 1 1 1 1 1 3 1 2 2 2 2 2 2 2 1 1 2 1
## 153 154 156 157 158 161 163 164 165 168 173 176
## 1 1 1 1 1 1 1 1 1 1 1 1
mediana <- median(datos)
mediana
## [1] 146
moda <- names(frecuencia[frecuencia == max(frecuencia)]) # Valor máximo de frecuencia previamente generada
moda
## [1] "135"
clases <- 10
tabla.intervalos <- transform(table(cut(datos, breaks = clases)))
tabla.intervalos # es un data.frame
## Var1 Freq
## 1 (119,125] 1
## 2 (125,130] 3
## 3 (130,136] 5
## 4 (136,142] 4
## 5 (142,148] 10
## 6 (148,153] 6
## 7 (153,159] 4
## 8 (159,165] 3
## 9 (165,170] 2
## 10 (170,176] 2
# Podemos agregar columnas al Data.Frame. Frecuencia Relativa y Frecuencia Porcentual
tabla.intervalos <- data.frame(tabla.intervalos, 'Freq.Rel' = tabla.intervalos$Freq / n)
tabla.intervalos <- data.frame(tabla.intervalos, 'Freq.Porc' = tabla.intervalos$Freq.Rel * 100)
tabla.intervalos
## Var1 Freq Freq.Rel Freq.Porc
## 1 (119,125] 1 0.025 2.5
## 2 (125,130] 3 0.075 7.5
## 3 (130,136] 5 0.125 12.5
## 4 (136,142] 4 0.100 10.0
## 5 (142,148] 10 0.250 25.0
## 6 (148,153] 6 0.150 15.0
## 7 (153,159] 4 0.100 10.0
## 8 (159,165] 3 0.075 7.5
## 9 (165,170] 2 0.050 5.0
## 10 (170,176] 2 0.050 5.0
clases <- nclass.Sturges(datos)
clases
## [1] 7
tabla.intervalos <- transform(table(cut(datos, breaks = clases)))
tabla.intervalos # es un data.frame
## Var1 Freq
## 1 (119,127] 3
## 2 (127,135] 5
## 3 (135,143] 7
## 4 (143,152] 12
## 5 (152,160] 6
## 6 (160,168] 4
## 7 (168,176] 3
# Podemos agregar columnas al Data.Frame. Frecuencia Relativa y Frecuencia Porcentual
tabla.intervalos <- data.frame(tabla.intervalos, 'Freq.Rel' = tabla.intervalos$Freq / n)
tabla.intervalos <- data.frame(tabla.intervalos, 'Freq.Porc' = tabla.intervalos$Freq.Rel * 100)
tabla.intervalos
## Var1 Freq Freq.Rel Freq.Porc
## 1 (119,127] 3 0.075 7.5
## 2 (127,135] 5 0.125 12.5
## 3 (135,143] 7 0.175 17.5
## 4 (143,152] 12 0.300 30.0
## 5 (152,160] 6 0.150 15.0
## 6 (160,168] 4 0.100 10.0
## 7 (168,176] 3 0.075 7.5