title: “Laboratorio No. 2” output: html_document date: “2025-04-26”
Salaries <- read.csv("C:/Users/Juan Carlos Carrillo/Desktop/Universidad/Métodos Cuantitativos para el Análisis de Información/Taller2/Salaries.csv",sep = ";", header = TRUE)
Salaries$rank = factor(Salaries$rank, levels = c("AsstProf", "AssocProf", "Prof"), ordered = TRUE)
Salaries$discipline = factor(Salaries$discipline, levels = c("A", "B"), labels = c("Teorica", "Aplicado"))
Salaries$sex = factor(Salaries$sex, levels = c("Female", "Male"), labels = c("Femenino", "Masculino"))
summary(Salaries)
## rank discipline yrs.since.phd yrs.service sex
## AsstProf : 67 Teorica :181 Min. : 1.00 Min. : 0.00 Femenino : 39
## AssocProf: 64 Aplicado:216 1st Qu.:12.00 1st Qu.: 7.00 Masculino:358
## Prof :266 Median :21.00 Median :16.00
## Mean :22.31 Mean :17.61
## 3rd Qu.:32.00 3rd Qu.:27.00
## Max. :56.00 Max. :60.00
## salary
## Min. : 57800
## 1st Qu.: 91000
## Median :107300
## Mean :113706
## 3rd Qu.:134185
## Max. :231545
attach(Salaries)
# metricas evaluar salario vs sexo
Resumen=matrix(0,ncol=2,nrow=4)
rownames(Resumen)=c("Media","Mediana","Max","min")
Resumen[1,] = round(c(tapply(salary,sex,mean)),2)
Resumen[2,] = round(c(tapply(salary,sex,median)),2)
Resumen[3,] = round(c(tapply(salary,sex,max)),2)
Resumen[4,] = round(c(tapply(salary,sex,min)),2)
colnames(Resumen)=c("Salario Femenino","Salario Masculino")
Resumen
## Salario Femenino Salario Masculino
## Media 101002.4 115090.4
## Mediana 103750.0 108043.0
## Max 161101.0 231545.0
## min 62884.0 57800.0
windows(height = 10, width = 10)
boxplot(salary~sex,main="Salario vs sexo",xlab="Sexo",ylab="Salario",col="Blue")
####################################################################################################
Resumen2=matrix(0,ncol=2,nrow=4)
rownames(Resumen2)=c("Media","Mediana","Max","min")
Resumen2[1,] = round(c(tapply(yrs.since.phd,sex,mean)),2)
Resumen2[2,] = round(c(tapply(yrs.since.phd,sex,median)),2)
Resumen2[3,] = round(c(tapply(yrs.since.phd,sex,max)),2)
Resumen2[4,] = round(c(tapply(yrs.since.phd,sex,min)),2)
colnames(Resumen2)<-c("Años desde PhD Femenino","Años desde PhD Masculino")
Resumen2
## Años desde PhD Femenino Años desde PhD Masculino
## Media 16.51 22.95
## Mediana 17.00 22.00
## Max 39.00 56.00
## min 2.00 1.00
boxplot(yrs.since.phd ~ sex, main = "Años desde PhD por Género",xlab="Sexo",ylab="SAños desde Phd",col="Blue")
####################################################################################################
Resumen3=matrix(0,ncol=2,nrow=4)
rownames(Resumen3)=c("Media","Mediana","Max","min")
Resumen3[1,] = round(c(tapply(yrs.service,sex,mean)),2)
Resumen3[2,] = round(c(tapply(yrs.service,sex,median)),2)
Resumen3[3,] = round(c(tapply(yrs.service,sex,max)),2)
Resumen3[4,] = round(c(tapply(yrs.service,sex,min)),2)
colnames(Resumen3)<-c("Años de servicio Femenino","Años de servicio Masculino")
Resumen3
## Años de servicio Femenino Años de servicio Masculino
## Media 11.56 18.27
## Mediana 10.00 18.00
## Max 36.00 60.00
## min 0.00 0.00
boxplot(yrs.service ~ sex, , main = "Años de Servicio por Género",xlab="Sexo",ylab="SAños de servicio",col="Blue")
##################################################################################################
#Distribucion
windows(height = 10, width = 10)
par(mfrow=c(1,2))
tabla=table(Salaries$sex, Salaries$rank)
tabla
##
## AsstProf AssocProf Prof
## Femenino 11 10 18
## Masculino 56 54 248
barplot(tabla,
beside = TRUE,
col = c("blue", "red"),
main = "Numero de profesores por sexo y categoría docente",
xlab = "Categoría docente",
ylab = "Cantidad de profesores",
ylim=c(0,250))
legend("topleft",
c("Female","Male"),
fill = c("blue","red"),
text.font = 4,
bty = "n"
)
tabla2=table(Salaries$sex, Salaries$discipline)
tabla2
##
## Teorica Aplicado
## Femenino 18 21
## Masculino 163 195
barplot(tabla2,
beside = TRUE,
col = c("blue", "red"),
main = "Numero de profesores por sexo y Disciplina",
xlab = "Disciplina",
ylab = "Cantidad de profesores",
ylim=c(0,200))
legend("topleft",
c("Female","Male"),
fill = c("blue","red"),
text.font = 4,
bty = "n"
)
###################################################################
#Correlaciones
femenino = Salaries[Salaries$sex == "Femenino",]
masculino = Salaries[Salaries$sex == "Masculino",]
cfemenino = cor(femenino$yrs.since.phd,femenino$salary,use="pairwise.complete.obs")
cmasculino = cor(masculino$yrs.since.phd,masculino$salary,use="pairwise.complete.obs")
c2femenino = cor(femenino$yrs.service,femenino$salary,use="pairwise.complete.obs")
c2masculino = cor(masculino$yrs.service,masculino$salary,use="pairwise.complete.obs")
windows(height = 10, width = 15)
par(mfrow=c(2,2))
plot(femenino$yrs.since.phd,femenino$salary,main="AÑOS PHD femenino vs. Salario",type="p",pch=20,xlab="AÑOS",ylab="salario")
lim_fem <- par("usr")
text(x = lim_fem[1] + 2, y = lim_fem[4] - 4000,
labels = paste("R =", round(cfemenino, 2)))
abline(lm(femenino$salary~femenino$yrs.since.phd),col="black")
plot(masculino$yrs.since.phd,masculino$salary,main="AÑOS PHD masculino vs. Salario",type="p",pch=20,xlab="AÑOS",ylab="salario")
lim_fem <- par("usr")
text(x = lim_fem[1] + 3, y = lim_fem[4] - 6000,
labels = paste("R =", round(cmasculino, 2)))
abline(lm(masculino$salary~masculino$yrs.since.phd),col="black")
plot(femenino$yrs.service,femenino$salary,main="AÑOS de servicio femenino vs. Salario",type="p",pch=20,xlab="AÑOS",ylab="salario")
lim_fem <- par("usr")
text(x = lim_fem[1] + 2, y = lim_fem[4] - 4000,
labels = paste("R =", round(c2femenino, 2)))
abline(lm(femenino$salary~femenino$yrs.service),col="black")
plot(masculino$yrs.service,masculino$salary,main="AÑOS de servicio masculino vs. Salario",type="p",pch=20,xlab="AÑOS",ylab="salario")
lim_fem <- par("usr")
text(x = lim_fem[1] + 3, y = lim_fem[4] - 6000,
labels = paste("R =", round(c2masculino, 2)))
abline(lm(masculino$salary~masculino$yrs.service),col="black")
###############################################