#Enunciado: ##Pregunta 1.
Elabore una R-función propia que permita calcular la moda para datos agrupados. Una vez elaborada la función aplíquela en un ejemplo (Deberá mostrar la tabla de frecuencias que usará en la función).
| Interv | F. abs | F.a.ac | \[x_{i}\] |
|---|---|---|---|
| [10,15) | 5 | 5 | 12.5 |
| [15,20) | 13 | 18 | 17.5 |
| [20,25) | 8 | 26 | 22.5 |
| [25,30) | 2 | 28 | 27.5 |
| [30,35) | 4 | 32 | 32.5 |
library(fdth)
## Warning: package 'fdth' was built under R version 4.2.2
##
## Attaching package: 'fdth'
## The following objects are masked from 'package:stats':
##
## sd, var
tabla<- fdt(mtcars$mpg,start = 10,end=35,h=5)
tabla
## Class limits f rf rf(%) cf cf(%)
## [10,15) 5 0.16 15.62 5 15.62
## [15,20) 13 0.41 40.62 18 56.25
## [20,25) 8 0.25 25.00 26 81.25
## [25,30) 2 0.06 6.25 28 87.50
## [30,35) 4 0.12 12.50 32 100.00
\[ moda=Li\frac{fa_{i}-fa_{i-1}}{(fa_i-fa_{i-1})+(fa_i-fa_{i+1})}a \]
\[ moda=15+\frac{13-5}{(13-5)+(13-8)}*5\]
\[ moda=15+\frac{8}{(8)+(5)}*5 \]
\[ moda=15+\frac{8}{13}*5 \]
\[ moda=18.07 \]
modaa<-function(breaks,absfreqs){
a<-diff(breaks)[1]
n<-sum(absfreqs)
Facum<-cumsum(absfreqs)
nmedian<-ifelse(n%%2==0,n/2,(n+1)/2)
intermedian<-Facum-nmedian
int<-min(which(intermedian>0))
maximo<-absfreqs[which.max(absfreqs)+1]
maxx<-absfreqs[which.max(absfreqs)-1]
moda<-breaks[int]+((max(absfreqs)-maxx)/((max(absfreqs)-maxx)+(max(absfreqs)-maximo)))*a
c("la moda es"=moda)
}
modaa(breaks=c(10,15,20,25,30,35),absfreqs=c(5,13,8,2,4))
## la moda es
## 18.07692
#Pregunta 2.
Elabore una R-función propia que permita calcular la varianza, desviación estándar y coeficiente de variación para datos agrupados. Una vez elaborada la función aplíquela en un ejemplo (Deberá mostrar la tabla de frecuencias que usará en la función)
| Interv | F. abs | \[ x_{i}\] | \[(x_{i}-\bar{x})^2\] | \[x_{i}\]*F.abs |
|---|---|---|---|---|
| [10,15) | 5 | 12.5 | 63.50 | 62.5 |
| [15,20) | 13 | 17.5 | 8.81 | 227.5 |
| [20,25) | 8 | 22.5 | 4.12 | 180 |
| [25,30) | 2 | 27.5 | 49.43 | 55 |
| [30,35) | 4 | 32.5 | 144.75 | 130 |
##Fórmula de la varianza.
\[ S^2=\frac{1}{n}\sum_{i=1}^{n}((x_{i}-\bar{x})^2\cdot fa) \]
\[ S^2=\frac{1}{32}*(63.50 *5 )+(8.81*13)+(4.12*8)+(49.43 *2 )+(144.75*4 ) \]
\[ S^2=\frac{1}{32}*(1142.96) \]
\[ S^2= 35.71\]
##Fórmula de la Desviación Estándar.
\[ S=\sqrt{S^2} \]
\[ S=\sqrt{35.71} \]
\[ S= 5.97 \]
##Fórmula de la Coeficiente de Variación.
\[ Coef.V=\frac{S}{\bar{x}} \]
\[ Coef.V=\frac{5.97}{20.46} \]
\[ Coef.V=0.29 \]
dispersion<-function(breaks,absfreqs){
n<-sum(absfreqs)
Facum<-cumsum(absfreqs)
midp<-breaks[-length(breaks)]+diff(breaks)/2
media<-sum(absfreqs*midp)/n
cuadrado<-(((midp-media)^2)*absfreqs)
varianza<-sum(cuadrado)/n
desves<-sqrt(varianza)
coef.var<-desves/media
c("varianza"= varianza,"desv.estandar"=desves,"coef.variacion"=coef.var)
}
dispersion(breaks=c(10,15,20,25,30,35),absfreqs=c(5,13,8,2,4))
## varianza desv.estandar coef.variacion
## 35.7177734 5.9764348 0.2919785