Ich versuche, mich von einer PCA zu erholen, die mit scikit-learn erstellt wurde und deren Funktionen als relevant ausgewählt wurden .
Ein klassisches Beispiel mit IRIS-Datensatz.
import pandas as pd
import pylab as pl
from sklearn import datasets
from sklearn.decomposition import PCA
# load dataset
iris = datasets.load_iris()
df = pd.DataFrame(iris.data, columns=iris.feature_names)
# normalize data
df_norm = (df - df.mean()) / df.std()
# PCA
pca = PCA(n_components=2)
pca.fit_transform(df_norm.values)
print pca.explained_variance_ratio_
Dies kehrt zurück
In [42]: pca.explained_variance_ratio_
Out[42]: array([ 0.72770452, 0.23030523])
Wie kann ich wiederherstellen, welche beiden Funktionen diese beiden erklärten Abweichungen im Datensatz zulassen? Anders gesagt, wie kann ich den Index dieser Funktionen in iris.feature_names erhalten?
In [47]: print iris.feature_names
['sepal length (cm)', 'sepal width (cm)', 'petal length (cm)', 'petal width (cm)']
Vielen Dank im Voraus für Ihre Hilfe.
pca.components_
ist das, wonach Sie suchen.