Saltar al contenido principal

DataPrep Service

godml incluye un motor de transformaciones declarativas. Define los pasos de limpieza en YAML — sin escribir una línea de Python.

Configuración en godml.yml

dataset:
uri: ./data/raw.csv
target: churn
dataprep:
steps:
- op: drop_columns
params:
columns: [id, created_at, uuid]

- op: fill_missing
params:
strategy: median # mean | median | mode | constant
columns: [age, income]

- op: encode_categorical
params:
columns: [region, plan_type]
method: onehot # onehot | label | ordinal

- op: scale
params:
columns: [age, income, tenure]
method: standard # standard | minmax | robust

Transforms disponibles

Columnas

OperaciónopDescripción
Eliminar columnasdrop_columnsElimina columnas por nombre
Renombrarrename_columnsRenombra columnas
Seleccionarselect_columnsMantiene solo las especificadas
Castear tiposcast_typesConvierte tipos de datos

Valores faltantes

OperaciónopDescripción
Rellenarfill_missingMedia, mediana, moda o constante
Eliminar filasdrop_missingElimina filas con nulos

Encoding

OperaciónopDescripción
Categóricasencode_categoricalOne-Hot, Label, Ordinal
Textoencode_textTF-IDF, conteo

Escalado

OperaciónopDescripción
NormalizarscaleStandardScaler, MinMax, Robust

Calidad

OperaciónopDescripción
DeduplicardedupElimina filas duplicadas
Validarquality_checkValida schema y rangos
Ventana temporalwindowAgregaciones por ventana de tiempo

Unión

OperaciónopDescripción
JoinjoinUne con otro dataset

Ejemplo completo

dataset:
uri: ./data/customers_raw.csv
target: churned
dataprep:
steps:
# Eliminar columnas no útiles
- op: drop_columns
params:
columns: [customer_id, signup_timestamp, internal_note]

# Rellenar nulos
- op: fill_missing
params:
strategy: median
columns: [monthly_charges, tenure_months]

- op: fill_missing
params:
strategy: mode
columns: [contract_type, payment_method]

# Encoding de categóricas
- op: encode_categorical
params:
columns: [contract_type, payment_method, internet_service]
method: onehot

# Normalizar numéricas
- op: scale
params:
columns: [monthly_charges, total_charges, tenure_months]
method: standard

# Verificar calidad
- op: quality_check
params:
min_rows: 100
max_null_pct: 0.05

Usar DataPrep standalone

godml dataprep run recipe.yml
recipe.yml
inputs:
- name: raw
connector: csv
uri: ./data/raw.csv

steps:
- op: drop_columns
params:
columns: [id]

outputs:
- name: clean
connector: csv
uri: ./data/clean.csv

Compliance Service