# Carga de datos
Salaries <- read.csv("~/UV MAIN - 2025-2/ESTADISTICA/Laboratorio 2/Salaries.csv", sep=";",
stringsAsFactors=TRUE) # Asegúrate de la ruta y el separador
attach(Salaries)
# 1. Introduccion y Analisis Global
# Este informe analiza la estructura salarial de la facultad para determinar si existen
# evidencias de discriminacion por genero.
# A primera vista, al comparar los salarios globales sin tener en cuenta otras variables,
# observamos la siguiente distribucion:
# Grafico 1: Comparacion Global (Sin tildes para evitar errores)
boxplot(salary ~ sex, data = Salaries,
col = c("pink", "lightblue"),
main = "Distribucion Global de Salarios por Genero",
ylab = "Salario (USD)", xlab = "Genero")

# Tabla resumen
medias <- aggregate(salary ~ sex, data = Salaries, FUN = mean)
knitr::kable(medias, caption = "Salario Promedio por Genero (Sin ajustar)", digits = 0)
Salario Promedio por Genero (Sin ajustar)
| Female |
101002 |
| Male |
115090 |
# Hallazgo preliminar: Se observa una diferencia en las medianas y promedios salariales,
# donde el grupo masculino presenta valores superiores. Sin embargo, es necesario investigar
# si esto se debe al genero o a factores de confusion estructurales.
# 2. Analisis de Factores de Confusion
# Para responder si la diferencia es atribuible exclusivamente al genero, analizamos la
# distribucion de los profesores en los distintos escalafones (rank) y disciplinas.
par(mfrow=c(1,2)) # Dividir pantalla
# Grafico 2: Distribucion por Rango
Tabla_Rank <- table(Salaries$rank, Salaries$sex)
Tabla_Rank_Prop <- prop.table(Tabla_Rank, margin=2)
coord <- barplot(Tabla_Rank_Prop, beside=TRUE, legend.text=TRUE,
args.legend=list(x="topright", bty="n", cex=0.7),
col=c("lightyellow","orange","tomato"),
main="Distribucion de Cargos por Genero", ylim=c(0,1.15))
text(x=coord, y=Tabla_Rank_Prop,
labels=paste(round(Tabla_Rank_Prop,2)*100,"%"),
cex=0.7, pos=3)
# Grafico 3: Distribucion por Disciplina
Tabla_Disc <- table(Salaries$discipline, Salaries$sex)
Tabla_Disc_Prop <- prop.table(Tabla_Disc, margin=2)
coord2 <- barplot(Tabla_Disc_Prop, beside=TRUE, legend.text=TRUE,
args.legend=list(x="topright", bty="n", cex=0.7),
col=c("gray90","gray50"),
main="Distribucion por Disciplina", ylim=c(0,1.15))

# Analisis: 1. En el grafico de la izquierda, observamos que una proporcion mucho mayor
# de hombres ocupa el cargo de Prof (Titular), que es el mejor pagado. 2. Esto sugiere
# que el cargo (rank) es un fuerte factor de confusion.
# 3. Analisis Estratificado (Controlando el Rango)
# Aplicando el principio de la Paradoja de Simpson, comparamos hombres y mujeres dentro
# del mismo nivel de cargo para ver si la brecha persiste.
par(mfrow=c(1,3)) # Tres graficos lado a lado
limites_y <- c(min(Salaries$salary), max(Salaries$salary))
# Nivel 1: Assistant Prof
with(subset(Salaries, rank=="AsstProf"), {
boxplot(salary ~ sex, main="Nivel: AsstProf",
col=c("pink", "lightblue"), ylim=limites_y, ylab="Salario")
})
# Nivel 2: Associate Prof
with(subset(Salaries, rank=="AssocProf"), {
boxplot(salary ~ sex, main="Nivel: AssocProf",
col=c("pink", "lightblue"), ylim=limites_y)
})
# Nivel 3: Full Professor
with(subset(Salaries, rank=="Prof"), {
boxplot(salary ~ sex, main="Nivel: Prof (Titular)",
col=c("pink", "lightblue"), ylim=limites_y)
})

# Interpretación: Al "limpiar" el efecto del cargo, las cajas de los diagramas tienden a
# alinearse. Esto indica que la brecha salarial observada globalmente disminuye drásticamente
# cuando se compara a pares con la misma jerarquía.
# 4. Impacto de la Antiguedad
# Verificamos la relacion entre tiempo de servicio y salario.
# Gráfico 4: Dispersión con transparencia (Corregido)
# Definir colores básicos
colores_base <- ifelse(Salaries$sex=="Male", "blue", "red")
colores_transp <- adjustcolor(colores_base, alpha.f = 0.6)
pch_tipo <- ifelse(Salaries$sex=="Male", 19, 17)
plot(Salaries$yrs.service, Salaries$salary, col=colores_transp, pch=pch_tipo,
main="Salario vs Tiempo de Servicio", xlab="Anios de Servicio", ylab="Salario",
las=1)
legend("topleft", legend=c("Female", "Male"), col=c("red", "blue"), pch=c(17,19), bty="n")
# Lineas de tendencia
abline(lm(salary ~ yrs.service, data=subset(Salaries, sex=="Male")), col="blue", lwd=2)
abline(lm(salary ~ yrs.service, data=subset(Salaries, sex=="Female")), col="red", lwd=2)
# Conclusiones
# Existe una brecha salarial global ("cruda") entre hombres y mujeres.
# Sin embargo, no es atribuible exclusivamente al género. Los hombres tienen mayor antigüedad
# y ocupan desproporcionadamente los cargos más altos (Prof), los cuales tienen salarios base
# superiores.
# Al comparar dentro del mismo rango, la evidencia de discriminación directa se debilita.
