Análisis de datos

Aquí describimos las características personales y laborales de los docentes, y evaluamos la asociación de dichas características con la presencia de entrenamiento en bioética. La base de datos usada se muestra abajo.



library(reticulate)
use_condaenv("r-reticulate")
# Librerías y configuraciones globales
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns
import scipy
# Datos
df = pd.read_excel('Docentes_Datos.xlsx', engine='openpyxl')

# Ajustes de niveles de categorías
df = df.astype({'grado':'category','no_formal':'category','formal':'category'})
df['grado'].cat.reorder_categories(['Licenciatura','Grado Profesional','Especialización','Maestría'], ordered=True, inplace=True)
df['no_formal'].cat.reorder_categories(['No','Cursos cortos','Capacitación','Diplomado'], ordered=True, inplace=True)
df['formal'].cat.reorder_categories(['No','Especialización','Maestría'], ordered=True, inplace=True)
df['carrera'].replace({'Fisioterapia y Kinesiología':'Fisioterapia'}, inplace=True)
df['facultad'].replace({'Facultad de Medicina':'Medicina','Facultad de Ciencias de la Salud':'Ciencias de la Salud'}, inplace=True)

# Información sobre el conjunto de datos
df.info()
 
# Núm. docentes y de variables
## <class 'pandas.core.frame.DataFrame'>
## RangeIndex: 105 entries, 0 to 104
## Data columns (total 9 columns):
##  #   Column         Non-Null Count  Dtype   
## ---  ------         --------------  -----   
##  0   edad           105 non-null    int64   
##  1   sexo           105 non-null    object  
##  2   grado          105 non-null    category
##  3   facultad       105 non-null    object  
##  4   carrera        105 non-null    object  
##  5   experiencia    105 non-null    int64   
##  6   entrenamiento  105 non-null    object  
##  7   no_formal      105 non-null    category
##  8   formal         105 non-null    category
## dtypes: category(3), int64(2), object(4)
## memory usage: 5.8+ KB
df.shape
## (105, 9)