#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