Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
robertopucp
GitHub Repository: robertopucp/1eco35_2022_2
Path: blob/main/Trabajo_grupal/WG8/Grupo_3_py_Ejercicio4.py
2714 views
1
#!/usr/bin/env python
2
# coding: utf-8
3
4
# ### Pregunta 4: En un gráfico, muestre el diagrama de cajas (box - plot) del logaritmo del salario por hora de las personas con el mayor nivel educativo (ad) según genero. Nótese que el gráfico debe contener dos box-plot uno para los hombres y otro para las mujeres.
5
6
# In[5]:
7
8
9
#Importamos las librerías que vamos a utilizar:
10
11
import pandas as pd
12
13
import pyreadr
14
15
import math
16
17
import matplotlib.pyplot as plt
18
19
import numpy as np
20
21
import seaborn as sns
22
23
24
# In[6]:
25
26
27
# De esta manera abrimos una base de datos que esta en formato R en Python:
28
29
result = pyreadr.read_r("/Users/diegoyeliseo/Desktop/Archivo R Tarea 8/wage2015_subsample_inference.Rdata")
30
31
32
print(result.keys())
33
34
# Para poder mostrar la base de datos:
35
36
data = result["data"]
37
38
print(data)
39
40
41
# In[7]:
42
43
44
result.keys()
45
46
# Estamos diciendo que result1 va a ser igual a mi base de datos inicial:
47
48
result1 = result['data']
49
50
result1 = result1[["wage", "lwage", "sex" ,
51
"exp1", "exp2" ,"exp3" ,"exp4", "shs",
52
"hsg", "scl", "clg" , "ad"]]
53
54
55
# In[8]:
56
57
58
result2 = result1[result1['ad'] == 1]
59
60
fig, ax = plt.subplots(figsize=(10,6)) # Este código se usa para elegir el tamaño de la caja.
61
62
box = sns.boxplot(x='sex', y='lwage', data = result2 ,palette='rainbow')
63
64
plt.xlabel('Sexo de la persona') # Código para que el eje x reciba el nombre de Sexo de la persona
65
66
plt.ylabel('Log del salario por hora') # Código para que el eje y reciba el nombre de Logaritmo del salario por hora
67
68
(box.set_xticklabels(["Hombre", "Mujer"])) # Código que nos permite poner nombre a las etiquetas del eje x. En este caso, las etiquetas son hombre y mujer.
69
70
# Del plot box anterior, podemos notar que la mediana para los hombres está en aproximadamente 3.5. El máximo ingreso (en logaritmos) estaría cerca a las 5 unidades y existe presencia de 2 outliners por encima de dicha cantidad. Asimismo, el ingreso mínimo estaría en 2 unidades pero con presencia de varios outliners que llegan cerca a la unidad. Por otro lado, en el caso de las mujeres, la mediana se acerca más a las 3 unidades mientras que el salario máximo esta por las 4.5 unidades con presencia de outliners; el salario mínimo esta por encima del de los hombres.Encontramos simetría en los datos.
71