Noticia original: http://www.emol.com/noticias/Nacional/2016/06/15/807981/U-del-Desarrollo-es-la-mas-cara-del-pais-y-U-de-Chile-la-mas-costosa-de-las-estatales.html
Datos en https://dl.dropboxusercontent.com/u/1111274/arancel_ues.html
options(scipen=999)
df <- read.csv("ues.csv", header = T, sep=",")
str(df)
## 'data.frame': 51 obs. of 4 variables:
## $ Pos : int 1 2 3 4 5 6 7 8 9 10 ...
## $ Universidad : Factor w/ 51 levels "Arcis","Inacap",..: 32 4 33 13 41 44 48 42 7 25 ...
## $ Arancel.... : int 5342713 4994269 4758855 4605745 4040831 4018127 3941168 3905439 3824598 3783279 ...
## $ Clasificación: Factor w/ 3 levels "Estatal","Privada Cruch",..: 3 3 3 2 3 3 3 3 3 1 ...
promedio <- mean(df$Arancel....)
hist(df$Arancel....)
abline(v=promedio, col = 2)
tapply(df$Arancel...., df$Clasificación, mean)
## Estatal Privada Cruch Privada No Cruch
## 2557057 3011401 2914887
tapply(df$Arancel...., df$Clasificación, sd)
## Estatal Privada Cruch Privada No Cruch
## 595911.3 696783.8 1083270.9
El promedio del arancel de una estatal es promedio(desvest) $2.557.057(595.911), una privada Cruch $3.011.401(696.783) y una privada no Cruch $2.914.887(1.083.270)
privadasnocruch <- df[df$Clasificación=="Privada No Cruch", ]
privadascruch <- df[df$Clasificación=="Privada Cruch", ]
estatales <- df[df$Clasificación=="Estatal", ]
hist(estatales$Arancel....)
hist(privadascruch$Arancel....)
hist(privadasnocruch$Arancel....)
hist(privadasnocruch$Arancel...., xlim=c(1000000,6000000), col="red")
hist(privadascruch$Arancel...., add=T, col=rgb(0.1, 0.5, 1,0.5) )
hist(estatales$Arancel...., add=T, col=rgb(0.1, 0.9, 0.5,0.5) )
df2 <- df[order(df$Arancel....),]
row.names(df2) <- df2$Universidad
dotchart(df2$Arancel...., labels = rownames(df2),
cex = 0.5, main = "Arancel universidades chilenas",
xlab = "Arancel en millones de pesos chilenos")
library("ggplot2")
ggplot(df, aes(x = Clasificación, y = Arancel....)) +
geom_boxplot(fill = "grey80", colour = "blue") +
scale_x_discrete() + xlab("Tipo de Universidad") +
ylab("Arancel en millones de pesos")
diferencia <- aov(df$Arancel....~df$Clasificación)
summary(diferencia)
## Df Sum Sq Mean Sq F value Pr(>F)
## df$Clasificación 2 1467751838487 733875919243 0.859 0.43
## Residuals 48 41002709847043 854223121813
par(mfrow=c(2,2)) #numero de figuras en el plot;c(filas,columnas)
par(mar=c(5,6,4,2)+0.1)
plot(diferencia)
par(mfrow=c(1,1))
boxplot(df$Arancel....~df$Universidad)
mod1 <- lm(df$Arancel.... ~ df$Clasificación)
summary(mod1)
##
## Call:
## lm(formula = df$Arancel.... ~ df$Clasificación)
##
## Residuals:
## Min 1Q Median 3Q Max
## -1577249 -634886 -61611 340624 2427826
##
## Coefficients:
## Estimate Std. Error t value
## (Intercept) 2557057 256339 9.975
## df$ClasificaciónPrivada Cruch 454344 400778 1.134
## df$ClasificaciónPrivada No Cruch 357830 308489 1.160
## Pr(>|t|)
## (Intercept) 0.000000000000275 ***
## df$ClasificaciónPrivada Cruch 0.263
## df$ClasificaciónPrivada No Cruch 0.252
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 924200 on 48 degrees of freedom
## Multiple R-squared: 0.03456, Adjusted R-squared: -0.005667
## F-statistic: 0.8591 on 2 and 48 DF, p-value: 0.4299
anova(mod1)
## Analysis of Variance Table
##
## Response: df$Arancel....
## Df Sum Sq Mean Sq F value Pr(>F)
## df$Clasificación 2 1467751838487 733875919243 0.8591 0.4299
## Residuals 48 41002709847043 854223121813
confint(mod1)
## 2.5 % 97.5 %
## (Intercept) 2041653.4 3072460.0
## df$ClasificaciónPrivada Cruch -351474.0 1260163.1
## df$ClasificaciónPrivada No Cruch -262428.7 978088.5
mod <- data.frame(Fitted = fitted(mod1),
Residuals = resid(mod1), Grupos = df$Clasificación)
ggplot(mod, aes(Fitted, Residuals, colour = Grupos)) + geom_point()
mod2 <- aov(df$Arancel.... ~ df$Clasificación)
summary(mod2)
## Df Sum Sq Mean Sq F value Pr(>F)
## df$Clasificación 2 1467751838487 733875919243 0.859 0.43
## Residuals 48 41002709847043 854223121813
TukeyHSD(mod2)
## Tukey multiple comparisons of means
## 95% family-wise confidence level
##
## Fit: aov(formula = df$Arancel.... ~ df$Clasificación)
##
## $`df$Clasificación`
## diff lwr upr p adj
## Privada Cruch-Estatal 454344.53 -514932.5 1423621.6 0.4983578
## Privada No Cruch-Estatal 357829.89 -388246.8 1103906.6 0.4826168
## Privada No Cruch-Privada Cruch -96514.64 -949420.4 756391.2 0.9595879
par(mfrow=c(1,1)) #numero de figuras en el plot;c(filas,columnas)
par(mar=c(5,6,4,2)+0.1)
plot(TukeyHSD(mod2), las=1)