Ingeniería y selección de características
Descubra técnicas para mejorar la capacidad predictiva de sus modelos
Ingeniería y selección de características es una lección gratuita de Python Academy en CoddyKit. Esta es la lección 4 de 6. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Python Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Python Academy incluye 6 lecciones en total.
Ingeniería y selección de características
Ingeniería y selección de características
La ingeniería y la selección de características son pasos fundamentales para crear modelos eficaces de aprendizaje automático. Estos procesos consisten en crear nuevas características y seleccionar las más relevantes para mejorar el rendimiento del modelo.
En esta lección, aprenderá técnicas de ingeniería y selección de características para mejorar la precisión de las predicciones.

¿Qué es la ingeniería de características?
¿Qué es la ingeniería de características?
La ingeniería de características consiste en crear nuevas características a partir de datos sin procesar para que los modelos de aprendizaje automático sean más eficaces. Algunos ejemplos son:
- Extraer características basadas en el tiempo, como el día, el mes o la hora, a partir de marcas de tiempo.
- Combinar varias características en una nueva característica.
- Escalar las características numéricas para estandarizar su rango.
Creación de nuevas características
Creación de nuevas características
Vamos a crear nuevas características a partir de datos existentes:
# Example: Creating new features
import pandas as pd
data = {'Timestamp': ['2025-01-01 12:00:00', '2025-01-02 15:30:00']}
df = pd.DataFrame(data)
df['Hour'] = pd.to_datetime(df['Timestamp']).dt.hour
df['Day'] = pd.to_datetime(df['Timestamp']).dt.day
print(df)Escalado de características
Escalado de características
El escalado garantiza que todas las características numéricas estén en la misma escala, lo que mejora el rendimiento del modelo:
# Example: Scaling features
from sklearn.preprocessing import MinMaxScaler
scaler = MinMaxScaler()
values = [[10], [20], [30]]
scaled_values = scaler.fit_transform(values)
print(scaled_values)Selección de características
Selección de características
La selección de características consiste en elegir las características más relevantes para el modelo. Entre las técnicas más comunes se incluyen:
- Métodos de filtrado: Seleccionar características según medidas estadísticas como la correlación.
- Métodos envolventes: Usar algoritmos como la Eliminación Recursiva de Características (RFE).
- Métodos integrados: Seleccionar características durante el entrenamiento del modelo, por ejemplo, mediante la regresión Lasso.
Selección de características basada en la correlación
Selección de características basada en la correlación
Las características altamente correlacionadas pueden ser redundantes. Use Pandas para calcular las correlaciones:
# Example: Correlation-based feature selection
import pandas as pd
data = {'Feature1': [1, 2, 3], 'Feature2': [2, 4, 6], 'Feature3': [1, 1, 1]}
df = pd.DataFrame(data)
print(df.corr())Eliminación recursiva de características (RFE)
Eliminación recursiva de características (RFE)
RFE es un método envolvente que elimina iterativamente las características menos importantes:
# Example: RFE
from sklearn.feature_selection import RFE
from sklearn.linear_model import LogisticRegression
X = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
y = [0, 1, 0]
model = LogisticRegression()
rfe = RFE(model, n_features_to_select=2)
rfe.fit(X, y)
print("Selected Features:", rfe.support_)Importancia de las características con modelos basados en árboles
Importancia de las características con modelos basados en árboles
Los modelos basados en árboles, como Random Forests, proporcionan puntuaciones de importancia de las características:
# Example: Feature importance
from sklearn.ensemble import RandomForestClassifier
X = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
y = [0, 1, 0]
model = RandomForestClassifier()
model.fit(X, y)
print("Feature Importances:", model.feature_importances_)Errores comunes en la ingeniería de características
Errores comunes en la ingeniería de características
Estos son algunos errores que debe evitar:
- Crear demasiadas características, lo que puede provocar sobreajuste.
- Ignorar la necesidad de escalar los datos en algoritmos basados en distancias.
- Usar características altamente correlacionadas, lo que provoca redundancia.
¿Qué aprendió?
¿Qué aprendió?
En esta lección, aprendió:
- La importancia de la ingeniería y la selección de características en el aprendizaje automático.
- Técnicas para crear nuevas características y escalar características numéricas.
- Cómo seleccionar características relevantes mediante métodos como RFE y modelos basados en árboles.
- Errores comunes que debe evitar durante la ingeniería de características.
¡Excelente trabajo! Pasemos al siguiente tema.

Preguntas frecuentes
¿La lección «Ingeniería y selección de características» es gratis?
Sí — el texto completo de «Ingeniería y selección de características» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Python Academy, actualiza a CoddyKit PRO. El curso de Python Academy incluye 6 lecciones en total.
¿Qué aprenderé en «Ingeniería y selección de características»?
Descubra técnicas para mejorar la capacidad predictiva de sus modelos Practicas Python Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.
¿Necesito experiencia previa para empezar Python Academy?
No se requiere experiencia previa. Python Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 4 de 6.
¿Cuánto tiempo toma la lección «Ingeniería y selección de características»?
La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.
¿Puedo escribir y ejecutar código en esta lección de Python Academy?
Sí. Cada lección de Python Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.
Todas las lecciones de este curso
- Introducción al machine learning
- Aprendizaje supervisado con Scikit-Learn
- Aprendizaje no supervisado
- Ingeniería y selección de características
- Introducción a las redes neuronales
- Introducción a TensorFlow y Keras