Dentro de la Ingeniería de Características (Feature Engineering), las variables derivadas permiten transformar los datos originales en nuevas características que representan mejor el fenómeno que se desea modelar. Entre las transformaciones más utilizadas se encuentran las diferencias, los porcentajes y los márgenes, tres técnicas sencillas pero muy eficaces para enriquecer un conjunto de datos.
Aunque comparten el objetivo de generar información adicional a partir de variables existentes, cada una responde a necesidades distintas:
- Las diferencias permiten medir cambios absolutos
- Los porcentajes expresan relaciones proporcionales
- Los márgenes cuantifican la ganancia o la diferencia entre ingresos y costes.
Estas transformaciones aparecen con frecuencia en problemas relacionados con finanzas, marketing, comercio electrónico, industria y analítica empresarial.
¿Qué son las diferencias, los porcentajes y los márgenes?
Las tres son variables derivadas construidas mediante operaciones matemáticas sencillas sobre una o varias variables originales.
- Diferencias: miden el cambio absoluto entre dos valores.
- Porcentajes: expresan una relación proporcional respecto a un valor de referencia.
- Márgenes: representan la diferencia entre ingresos y costes, ya sea en valores absolutos o relativos.
Aunque sus cálculos son simples, suelen aportar información mucho más útil que las variables originales.

¿Por qué son importantes?
Los modelos de Machine Learning suelen obtener mejores resultados cuando trabajan con variables que representan relaciones significativas en lugar de valores aislados.
Por ejemplo:
- El beneficio aporta más información que conocer únicamente las ventas.
- El porcentaje de conversión es más representativo que el número absoluto de clientes.
- La diferencia entre temperaturas máxima y mínima puede describir mejor un fenómeno meteorológico que ambas variables por separado.
Estas transformaciones permiten incorporar conocimiento del dominio directamente al conjunto de datos.
¿Cómo funcionan?
Las tres técnicas parten de variables ya existentes.
El proceso habitual consiste en:
- Identificar variables relacionadas.
- Aplicar la operación matemática correspondiente.
- Crear una nueva característica.
- Validar que la nueva variable aporte información útil.
- Incorporarla al modelo de Machine Learning.
Aunque el procedimiento es sencillo, la selección de variables debe responder a una lógica de negocio o del problema analizado.
Diferencias
Las diferencias representan el cambio absoluto entre dos valores. Su fórmula general es:
$$\text{Diferencia}=Valor_1-Valor_2$$
Otro ejemplo habitual es la diferencia entre dos momentos temporales.
| Temperatura Máxima | Temperatura Mínima |
|---|---|
| 28 °C | 18 °C |
Resultado:
| Amplitud Térmica |
|---|
| 10 °C |
Porcentajes
Los porcentajes representan la proporción de una variable respecto a otra. Su fórmula es:
$$
\text{Porcentaje}=
\frac{Parte}{Total}\times100
$$
Permiten comparar observaciones independientemente de su tamaño.
Ejemplo
| Clientes Totales | Clientes Nuevos |
|---|---|
| 500 | 75 |
Resultado:
| Porcentaje Nuevos |
|---|
| 15 % |
Este tipo de variables aparece constantemente en análisis de negocio.
Márgenes
Los márgenes representan la diferencia entre ingresos y costes. Pueden expresarse de dos formas.
Margen absoluto
$$
Margen=
Ingresos-Costes
$$
Ejemplo:
| Ventas | Costes |
|---|---|
| 50.000 € | 32.000 € |
Resultado:
18.000 €
Margen porcentual
$$
Margen=
\frac{Beneficio}{Ventas}\times100
$$
Resultado:
36 %
Este indicador resulta especialmente útil para comparar empresas o productos con diferentes niveles de ventas.
Comparación entre las tres técnicas
| Técnica | Qué mide | Unidad |
|---|---|---|
| Diferencias | Cambio absoluto | Misma unidad de la variable |
| Porcentajes | Proporción respecto al total | Porcentaje (%) |
| Márgenes | Ganancia o rentabilidad | Valor absoluto o porcentaje |
Cada técnica responde a necesidades distintas y puede utilizarse de forma complementaria.
Ejemplos de aplicación
Análisis financiero
Variables originales:
| Ventas | Costes |
|---|---|
| 120.000 € | 90.000 € |
Variables derivadas:
- Diferencia: 30.000 €
- Margen: 25 %
Marketing digital
Variables originales:
| Impresiones | Clics |
|---|---|
| 50.000 | 2.500 |
Variable derivada:
- Porcentaje de clics (CTR): 5 %
Recursos humanos
Variables originales:
| Salario Actual | Salario Anterior |
|---|---|
| 2.300 € | 2.100 € |
Variable derivada:
- Diferencia salarial: 200 €
Beneficios
La utilización de estas variables derivadas aporta numerosas ventajas.
- Resumen información relevante.
- Facilitan la interpretación.
- Mejoran la representación de los datos.
- Eliminan parte del efecto del tamaño absoluto.
- Capturan relaciones entre variables.
- Incorporan conocimiento del dominio.
- Pueden mejorar el rendimiento de modelos predictivos.
En muchos casos, estas nuevas características resultan más informativas que las variables originales.
¿Cuándo utilizar estas técnicas?
Su utilización es recomendable cuando:
- Existen relaciones claras entre variables.
- Se desea comparar entidades de distinto tamaño.
- Se trabaja con indicadores financieros.
- Se analizan cambios temporales.
- Se necesita medir productividad o eficiencia.
- Se desarrollan indicadores de negocio.
Son especialmente útiles cuando el comportamiento relativo tiene más importancia que los valores absolutos.
Ventajas y desventajas
| Ventajas | Desventajas |
|---|---|
| Muy fáciles de calcular | No siempre aportan información adicional |
| Fácil interpretación | Pueden generar redundancia con otras variables |
| Mejoran algunos modelos predictivos | Los porcentajes requieren controlar divisiones por cero |
| Incorporan conocimiento del negocio | Los márgenes dependen del contexto empresarial |
| Reducen la dependencia de los valores absolutos | Algunas diferencias pueden ser poco representativas |
Limitaciones
Aunque son transformaciones muy utilizadas, presentan algunas limitaciones.
- No todas las diferencias tienen significado práctico.
- Los porcentajes pueden producir valores indefinidos cuando el denominador es cero.
- Los márgenes solo son aplicables cuando existe una relación entre ingresos y costes.
- Algunas variables derivadas pueden estar altamente correlacionadas.
- En determinados problemas pueden resultar insuficientes para representar relaciones complejas.
Por ello, suelen combinarse con otras técnicas de Ingeniería de Características.
Comparación con otras variables derivadas
| Técnica | Complejidad | Aplicaciones |
|---|---|---|
| Diferencias | Baja | Cambios absolutos |
| Porcentajes | Baja | Proporciones |
| Márgenes | Baja | Rentabilidad |
| Ratios | Media | Relaciones entre variables |
| Tasas de crecimiento | Media | Evolución temporal |
| Índices compuestos | Alta | Variables sintéticas |
Estas técnicas representan un primer nivel de Ingeniería de Características y suelen utilizarse como base para transformaciones más avanzadas.
Aplicaciones en Data Science y Machine Learning
Las diferencias, porcentajes y márgenes aparecen en numerosos dominios.
Algunas aplicaciones incluyen:
- Predicción de ventas.
- Scoring crediticio.
- Detección de fraude.
- Marketing digital.
- Comercio electrónico.
- Análisis financiero.
- Recursos humanos.
- Analítica deportiva.
- Salud.
- Industria.
- Turismo y hotelería.
- Business Intelligence.
En todos estos ámbitos permiten construir variables con un elevado significado práctico.
Implementación en Python
Crear una diferencia
import pandas as pd
df = pd.DataFrame({
'ventas': [120000, 95000],
'costes': [90000, 70000]
})
df['beneficio'] = (
df['ventas'] -
df['costes']
)
print(df)
Resultado:
ventas costes beneficio
0 120000 90000 30000
1 95000 70000 25000Calcular diferencias temporales
df = pd.DataFrame({
'ventas': [100, 120, 135, 150]
})
df['diferencia'] = (
df['ventas']
.diff()
)
print(df)
Resultado:
ventas diferencia
0 100 NaN
1 120 20.0
2 135 15.0
3 150 15.0Crear un porcentaje
df = pd.DataFrame({
'clientes': [500, 800],
'clientes_nuevos': [75, 120]
})
df['porcentaje_nuevos'] = (
df['clientes_nuevos'] /
df['clientes']
) * 100
print(df)
Evitar divisiones por cero
import numpy as np
df['porcentaje'] = np.where(
df['clientes'] != 0,
(
df['clientes_nuevos'] /
df['clientes']
) * 100,
np.nan
)
Calcular un margen absoluto
df = pd.DataFrame({
'ventas': [80000, 120000],
'costes': [50000, 90000]
})
df['margen'] = (
df['ventas'] -
df['costes']
)
Calcular un margen porcentual
df['margen_pct'] = (
df['margen'] /
df['ventas']
) * 100
Crear varias variables derivadas simultáneamente
df = pd.DataFrame({
'ventas': [100000],
'costes': [70000],
'clientes': [500],
'clientes_nuevos': [60]
})
df['beneficio'] = df['ventas'] - df['costes']
df['margen_pct'] = (
df['beneficio'] /
df['ventas']
) * 100
df['porcentaje_nuevos'] = (
df['clientes_nuevos'] /
df['clientes']
) * 100
Buenas prácticas
Para utilizar correctamente estas variables derivadas se recomienda:
- Seleccionar variables con una relación lógica clara.
- Controlar las divisiones por cero antes de calcular porcentajes o márgenes relativos.
- Analizar la distribución de las nuevas variables.
- Validar su contribución al rendimiento del modelo.
- Documentar las fórmulas utilizadas.
- Evitar crear variables redundantes.
- Incorporar estas transformaciones dentro de pipelines reproducibles.
- Complementarlas con otras técnicas de Ingeniería de Características cuando el problema lo requiera.
Conclusión
Las diferencias, los porcentajes y los márgenes constituyen algunas de las transformaciones más sencillas y, al mismo tiempo, más útiles dentro de la Ingeniería de Características. A partir de operaciones matemáticas básicas es posible generar variables que describen cambios absolutos, relaciones proporcionales o indicadores de rentabilidad, aportando una representación más rica y significativa de los datos.
Aunque su implementación es relativamente simple, estas variables suelen desempeñar un papel importante en modelos de Machine Learning orientados a problemas de negocio, análisis financiero, marketing o series temporales. Utilizadas de forma adecuada y combinadas con otras técnicas de Ingeniería de Características, permiten enriquecer los conjuntos de datos y mejorar tanto la capacidad predictiva como la interpretabilidad de los modelos.