Taller: Storytelling con el Mercado de Analistas de Datos
Taller en Google Colab: Storytelling con el Mercado de Analistas de Datos
Objetivo: Analizar el dataset de Kaggle sobre ofertas laborales para analistas de datos y construir una historia visual con hallazgos clave.
📊 Paso Extra: Extraer datos con operaciones de cadena
Alex quiere ahora separar rangos de empleados como "201 to 500 employees" usando solo operaciones de cadena como
split
. Esto lo ayudará a limpiar datos sin depender de regex.import pandas as pd
# Simulación de columna Size
sizes = [
'201 to 500 employees',
'10000+ employees',
'1001 to 5000 employees',
'51 to 200 employees',
'10000+ employees',
'-1',
'501 to 1000 employees'
]
df = pd.DataFrame({'Size': sizes})
def procesar_size(valor):
if 'to' in valor:
partes = valor.split(' to ')
min_emp = partes[0].strip()
max_emp = partes[1].split(' ')[0].strip()
return min_emp, max_emp
elif '+' in valor:
min_emp = valor.split('+')[0].strip()
return min_emp, None
else:
return None, None
# Aplicar función al DataFrame
df[['Min_emp', 'Max_emp']] = df['Size'].apply(lambda x: pd.Series(procesar_size(x)))
# Mostrar resultado
print(df)
🔧 Paso Extra: Otras funciones útiles de cadena en pandas
Además de
split
, Alex explora otras funciones de cadenas como str.contains
, str.replace
, str.upper
y str.strip
para limpiar y transformar datos.# Filtrar filas que contienen la palabra "employees"
df_filtrado = df[df['Size'].str.contains('employees', na=False)]
# Reemplazar "employees" por vacío y convertir a mayúsculas
df['Size_clean'] = df['Size'].str.replace(' employees', '', regex=False).str.upper()
# Eliminar espacios extra al inicio/final
df['Size_clean'] = df['Size_clean'].str.strip()
# Mostrar resultados transformados
print(df[['Size', 'Size_clean']])
Comentarios
Publicar un comentario