ds=round(runif(20,10,100))
f.acum=function(x){
res=0
for (i in 1:length(x)){
res=cumsum(x)
}
res
}
f.rel.acum=function(x){
res=0
for (i in 1:length(x)){
res=cumsum(x)
}
res
}
#breaks puede ser definido por usuario
c.1=as.data.frame(table(cut(ds,breaks=5)))
c.3=c.1$Freq/length(ds)
t.freq=data.frame(c.1$Var1,c.1$Freq,c.3,c.4=f.acum(c.1$Freq),c.5=f.rel.acum(c.3))
names(t.freq)=c("Intervalos","Frecuencia","Frecuencia Relativa","Frecuencia Acumulada","Frecuencia Relativa Acumulada")
t.freq
## Intervalos Frecuencia Frecuencia Relativa Frecuencia Acumulada
## 1 (10.9,28.2] 3 0.15 3
## 2 (28.2,45.4] 0 0.00 3
## 3 (45.4,62.6] 8 0.40 11
## 4 (62.6,79.8] 5 0.25 16
## 5 (79.8,97.1] 4 0.20 20
## Frecuencia Relativa Acumulada
## 1 0.15
## 2 0.15
## 3 0.55
## 4 0.80
## 5 1.00
# Construccion del histograma
# ds puede ser cualquier conjunto de datos
histograma=hist(ds,breaks="FD",xlab = "Intervalos de clase",ylab = "Frecuencia",main="Histograma de datos",col="skyblue",freq = FALSE,
ylim=c(0,1))
curve(dunif(x,10,100),type = "l",col="red",add=TRUE)
lines(t.freq$`Frecuencia Relativa Acumulada`,type = "l",col="blue")
