Code
#lectura de los datos
library(readr)
estudiantes <- read_csv("estudiantes.csv")1a. Cargar los datos estudiantes.csv a Rstudio.
#lectura de los datos
library(readr)
estudiantes <- read_csv("estudiantes.csv")1b. Crear una tabla de frecuencias con 6 clases, que contenga: frecuencias absolutas, frecuencias acumuladas, marca de clase y límites inferior y superior.
# tabla de frecuencia
x = estudiantes$estatura
# maximo y minimo de los datos
xmax = max(x)
xmin = min(x)
# ancho de los intervalos
ancho = 5
# limites inf y sup de cada intervalo
cortes = seq(from = 160, to = 190, by = ancho)
#encontramos el intervalo al cual pertenece cada dato
interv = cut(x, include.lowest = TRUE, right = FALSE, breaks = cortes)
# frecuencia de cada intervalo
frec_basica = table(interv)
# tabla de frecuencia basica
tabla = data.frame(frec_basica)
# agregamos otras columnas
tabla$F = cumsum(tabla$Freq)
tabla$xi = cortes[1:(length(cortes)-1)] + ancho/2
tabla$linf = cortes[1:(length(cortes)-1)]
tabla$lsup = cortes[2:length(cortes)]
#Cambiamos los nombres de la tabla
names(tabla)[1] <- "Clase"
names(tabla)[2] <- "f"
# veamos la tabla
tabla1c. Encontrar la media.
# media de datos no agrupados
mean(estudiantes$estatura)1d. Encontrar la mediana y luego interprete el valor.
# mediana de datos no agrupados
median(estudiantes$estatura)2a. Encuentre la media de los datos agrupados.
n = length(x)
# media de datos agrupados
sum(tabla$f*tabla$xi)/n2b. Encuentre la mediana de los datos agrupados y luego interprete el valor.
i = which(tabla$F>n/2)[1]
Li = tabla$linf[i]
Ls = tabla$lsup[i]
Fimenos1 = tabla$F[i]
fi = tabla$f[i+1]
# mediana de datos agrupados
Li + (Ls-Li)*((n/2 - Fimenos1)/fi)2c. Encuentre la moda de los datos agrupados y luego interprete el valor.
i = which.max(tabla$f)
Li = tabla$linf[i]
Ls = tabla$lsup[i]
fimas1 = tabla$f[i+1]
fimenos1 = tabla$f[i-1]
# moda de datos agrupados
Li + (Ls-Li)*(fimas1/(fimenos1 + fimas1))