Descriptiva <- function(datos, representacion=T, discreta) { n <- length(datos) minimo <- min(datos) maximo <- max(datos) rango <- maximo - minimo cuantil1 <- quantile(datos, probs=0.25, name=FALSE) cuantil2 <- quantile(datos, probs=0.5, name=FALSE) cuantil3 <- quantile(datos, probs=0.75, name=FALSE) recorrido <- cuantil3 - cuantil1 coeficienteapertura <- maximo/minimo recorridosemi <- (cuantil3-cuantil1)/(cuantil3+cuantil1) mediaaritmetica <- mean(datos) mediageometrica <- exp(mean(log(datos))) mediaarmonica <- n/(sum(1/datos)) recorridorelativo <- recorrido/mediaaritmetica varianza <- var(datos) desviaciontipica <- sqrt(var(datos)) coeficientevariacion <- desviaciontipica/mediaaritmetica m3 = sum((datos-mediaaritmetica)^(3))/n asimetria <- m3/(desviaciontipica^(3)) m4 = sum((datos-mediaaritmetica)^(4))/n curtosis <- (m4/(desviaciontipica^(4))) - 3 datos <- sort(datos) u <- cumsum(datos) p <- array(0,c(1,n)) q <- array(0,c(1,n)) for (i in 1:n) { p[i] <- i/n q[i] <- u[i]/u[n] } indicegini <- 1 - ((sum(q[1:n-1]))/(sum(p[1:n-1]))) if (representacion==T) { if (discreta=="s") { tab <- table(sort(datos)) win.graph() barplot(tab, main="Diagrama de Barras", col="red") win.graph() pie(tab, main="Diagrama de Sectores") mod <- sort(table(datos), TRUE) moda <- mod[1] } else { win.graph() boxplot(datos, main="Diagrama de Cajas", col="red") win.graph() hist(datos, main="Histograma", col="red") moda <- c() } } resultado <- list(minimo, maximo, rango, cuantil1, cuantil2, cuantil3, moda, recorrido, coeficienteapertura, recorridorelativo, recorridosemi, mediaaritmetica, mediageometrica, mediaarmonica, varianza, desviaciontipica, coeficientevariacion, asimetria, curtosis, indicegini) names(resultado) <- c("Mínimo", "Máximo", "Recorrido o rango", "Primer Cuantil", "Segundo Cuantil o Mediana", "Tercer Cuantil", "Moda", "Recorrido Intercuartílico", "Coeficiente de Apertura", "Recorrido Relativo", "Recorrido Semi-intercuartílico", "Media Aritmética", "Media Geométrica", "Media Armónica", "Varianza", "Desviación Típica", "Coeficiente de Variación", "Coeficiente de Asimetría", "Coeficiente de Curtosis", "Índice de Gini") resultado } # source("Descriptiva.txt") # datos = sample(10,5000, replace=TRUE) # datos = c(5.75, 6.25, 4.5, 6, 7.75, 5, 5.75, 2.5, 6, 4.5, 4.5, 1, 1.5, 8.5, 7.25, 6, 4, 6.75, 3.25, 1, 7, 1, 6.75, 1, 1.25, 6.25, 6.75, 6.25, 4, 8.75, 3.5, 8.5, 7.25, 2.25, 2, 5.75, 1.5, 7.25, 6.25, 2, 8, 7, 6, 6.5, 1.75, 1, 5.5, 3.5, 4.75, 2.5, 5, 7.5, 3.75, 6.25, 5, 6.25, 4.5, 4.25, 3.5, 1.5, 7.5, 5.75, 2.25, 8, 1, 4.75, 4.25, 2.75, 4.75, 5, 6.5, 2, 1.5, 5, 4.25, 6.25, 3, 5.75) # Descriptiva(datos)