Die variable Wichtigkeit (oder Feature-Wichtigkeit) wird für alle Features berechnet, denen Sie Ihr Modell anpassen. Dieser Pseudo-Code gibt Ihnen eine Vorstellung davon, wie Variablennamen und Bedeutung in Beziehung gesetzt werden können:
import pandas as pd
train = pd.read_csv("train.csv")
cols = ['hour', 'season', 'holiday', 'workingday', 'weather', 'temp', 'windspeed']
clf = YourClassifiers()
clf.fit(train[cols], train.targets) # targets/labels
print len(clf.feature_importances_)
print len(cols)
Sie werden sehen, dass die Längen der beiden Listen gedruckt werden die gleichen sind - Sie im Wesentlichen die Listen Karte können zusammen oder manipuliere sie wie du willst. Wenn Sie Variable Bedeutung in einem Grundstück schön zeigen möchten, können Sie diese verwenden:
import numpy as np
import matplotlib.pyplot as plt
plt.figure(figsize=(6 * 1.618, 6))
index = np.arange(len(cols))
bar_width = 0.35
plt.bar(index, clf.feature_importances_, color='black', alpha=0.5)
plt.xlabel('features')
plt.ylabel('importance')
plt.title('Feature importance')
plt.xticks(index + bar_width, cols)
plt.tight_layout()
plt.show()
Wenn Sie wollen, diese Methode nicht verwenden (was bedeutet, dass Sie alle Spalten sind passend, nicht nur wenige ausgewählt als in cols
Variable gesetzt, dann könnten Sie die Spalte/Feature/Variablen Namen Ihrer Daten mit train.columns.values
(und dann diese Liste zusammen mit Variable Wichtigkeitsliste zuordnen oder auf andere Weise manipulieren).
[In diesem Beispiel wird Feature-Wichtigkeit grafisch dargestellt] (http://scikit-learn.org/0.13/auto_examples/ensemble/plot_forest_importances.html#example-ensemble-plot-forest-importancen-py). Könnten Sie deutlicher machen, was Sie wollen ("raffinierter") - vielleicht, was in diesem Beispiel nicht gezeigt wird? – AGS