Transformación de datos con Pentaho: parte 2
Clase 21 de 25 • Curso de Fundamentos de ETL con Python y Pentaho
Contenido del curso
Extracción de datos
Transformación de datos
Carga de datos
ETL con Pentaho
Conclusión
¿Cómo transformar datos con Pentaho de manera eficiente?
Pentaho es una poderosa herramienta open source para el manejo de ETLs, ideal para transformar datasets. A continuación, exploraremos cómo manejar transformaciones con Pentaho de una manera efectiva, siguiendo un flujo de trabajo meticuloso que nos permitirá enriquecer nuestros datos e integrarlos en un modelo completo.
¿Cómo filtrar y secuenciar datos?
El primer paso esencial en la manipulación de datos es filtrar y establecer secuencias apropiadas para garantizar que solo trabajamos con información relevante.
-
Filtro de filas: Se utiliza el filtro de rows para seleccionar únicamente registros donde el campo "alfa" no sea nulo.
# Pseudo-código en base a la clase filtro = filtro_filas(main, condiciones={'alfa': 'nonull'}) -
Secuencia de identificadores: Aplicar una secuencia para generar un ID único, "idCountry", para los países. Esto nos permitirá más adelante integrarlos con otros conjuntos de datos.
# Configuración de la secuencia secuencia = aplicar_secuencia(filtro, nombre='addSequenceCountry', inicio=1, fin=9999) -
Selección de valores: Seleccionar solo las columnas necesarias como "idCountry", "alfa", "país", "región" y "subregión" para optimizar el dataset.
# Selección de columnas select_values(secuencia, columnas_necesarias=['idCountry', 'alfa', 'país', 'región', 'subregión'])
¿Cómo ordenar y obtener valores únicos?
El ordenamiento y limpieza de duplicados es crucial para mantener la integridad de los datos.
-
Ordenamiento de filas: Primero, ordenamos las filas por los campos "flow", "year" y "quantity" para prepararlos para procesos posteriores que requieran datos ordenados.
# Ejemplo de ordenamiento por flow sort_rows(flow_data, campo_orden='flow', tipo_orden='ascendente') -
Extracción de valores únicos: Posteriormente, utilizamos unique_rows para obtener únicamente los valores únicos de "flow", "year" y "quantity".
unique_values = obtener_filtrado_unico(datos_ordenados, campo='flow')
¿Cómo agregar secuencias a nuestros datos?
La incorporación de secuencias numéricas a los datos ayuda a establecer identificadores únicos necesarios para futuras integraciones.
-
Secuencia de "flow": Creamos un identificador único para "flow", nombrándolo "id flow".
secuencia_flow = agregar_secuencia(flow_unico, nombre='id flow') -
Identificadores para "year" y "quantity": Repetimos el proceso para "year" y "quantity", asegurándonos de renombrar los IDs de manera clara y comprensible.
secuencia_year = agregar_secuencia(year_unico, nombre='id year') secuencia_quantity = agregar_secuencia(quantity_unico, nombre='id quantity') -
Selección final de valores: Seleccionamos los campos relevantes y los preparamos para análisis e integraciones futuras.
select_values(final, columnas=['id flow', 'flow', 'id year', 'year', 'id quantity', 'quantity name'])
¿Qué hemos aprendido y cómo seguir adelante?
Manejar Pentaho permite realizar transformaciones complejas de manera visual y ordenada, ahorrando tiempo y reduciendo errores al trabajar con grandes volúmenes de datos. Los procesos aquí descritos son paralelos a los realizados en herramientas como pandas, pero con la ventaja de una interfaz gráfica que permite realizar dichas tareas de manera intuitiva. ¡Continúa explorando y mejorando tus habilidades con Pentaho y similares! Te invitamos a seguir avanzado en el proceso de transformación de datos, culminando nuestro dataset y realizando integraciones clave en clases futuras.