Hola Jorge,
¡Buenas! Para normalizar varias columnas simultáneamente en un DataFrame de Pandas. Puedes hacerlo utilizando un bucle para aplicar pd.json_normalize()
a cada columna que necesites. Aquí te dejo un ejemplo práctico de cómo podrías hacerlo:
import pandas as pd
# Supongamos que tienes un DataFrame con varias columnas que contienen datos anidados
datos_pacientes_2 = {
'Pacientes': [{'nombre': 'Juan', 'edad': 30}, {'nombre': 'Ana', 'edad': 25}],
'Consultas': [{'fecha': '2021-01-01', 'diagnóstico': 'gripe'}, {'fecha': '2021-02-01', 'diagnóstico': 'resfriado'}]
}
# Crear el DataFrame
df = pd.DataFrame(datos_pacientes_2)
# Normalizar cada columna que contiene datos anidados
columnas_a_normalizar = ['Pacientes', 'Consultas']
df_normalizado = pd.concat([pd.json_normalize(df[col]) for col in columnas_a_normalizar], axis=1)
print(df_normalizado)
En este ejemplo, columnas_a_normalizar
es una lista de las columnas que deseas normalizar. El código utiliza una comprensión de lista para aplicar pd.json_normalize()
a cada columna y luego concatena los resultados en un nuevo DataFrame.
Espero que este enfoque te sea útil. ¡Buenos estudios!