ComenzarEmpieza gratis

Eliminación recursiva de características manual

Ahora que hemos creado un clasificador de diabetes, veamos si podemos reducir el número de características sin perjudicar demasiado la exactitud del modelo.

En la segunda línea de código se seleccionan las características del DataFrame original. Ajusta esa selección.

Se ha predefinido una instancia de StandardScaler() como scaler y una de LogisticRegression() como lr.

También se han precargado todas las funciones y paquetes necesarios.

Este ejercicio forma parte del curso

Reducción de dimensionalidad en Python

Ver curso

Ejercicio interactivo práctico

Prueba este ejercicio y completa el código de muestra.

# Remove the feature with the lowest model coefficient
X = diabetes_df[['pregnant', 'glucose', 'diastolic', 'triceps', 'insulin', 'bmi', 'family', 'age']]

# Performs a 25-75% train test split
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.25, random_state=0)

# Scales features and fits the logistic regression model
lr.fit(scaler.fit_transform(X_train), y_train)

# Calculates the accuracy on the test set and prints coefficients
acc = accuracy_score(y_test, lr.predict(scaler.transform(X_test)))
print(f"{acc:.1%} accuracy on test set.") 
print(dict(zip(X.columns, abs(lr.coef_[0]).round(2))))
Editar y ejecutar código