Dieser Artikel beschreibt die K-Means-Methode (Datenclustering) und die Hauptkomponentenanalyse, die effektiv verwendet werden können, wenn Sie mit der Datenanalyse unter Verwendung von Python-Pandas fortfahren. Um das Clustering zu verstehen, ist es gut, im Voraus über Mittelwert, Abweichung, Standardisierung usw. Bescheid zu wissen. Es wäre gut, wenn Sie das Wissen bis zum zweiten Kapitel des Buches hätten: "Sie können in 10 Stunden 4 Jahre lang Statistik am College lernen." Ich habe Pandas mit dem Namen pd im Voraus importiert.
Algorithmus zur Klassifizierung in k Cluster
Technik zur Reduzierung der Anzahl der Dimensionen (Da es schwierig ist, Daten mit 3 oder mehr Variablen in einer Ebene auszugeben, können Sie durch Verringern der Anzahl der Dimensionen auf leicht verständliche Weise in einer Ebene zeichnen.)
from sklearn.cluster import KMeans
from sklearn.preprocessing import StandardScaler
from sklearn.decomposition import PCA
Führen Sie die Standardisierung mit fit_transform aus der geladenen Bibliothek durch
Annahme: Lesen / bearbeiten Sie die zu analysierenden Daten mit Pandas usw. im Voraus und erstellen Sie sie mit den folgenden Variablen (In den folgenden Daten werden numerische Daten wie Mittelwert, Median, Max, Min gespeichert.) Name der Datenvariablen: an_data
sc = StandardScaler()
clustering_sc = sc.fit_transform(an_data)
Wenn Sie einen Wert auf random_state setzen, was eine Option von KMeans ist, können Sie dasselbe Ergebnis erzielen, indem Sie die Option ab dem nächsten Mal mit demselben Wert angeben. (Der Standardwert ist random_state = None, der jedes Mal mit einer anderen Zufallszahl verarbeitet wird.)
kmeans = KMeans(n_cluster=<Anzahl der Cluster>, random_state=0)
clusters = kmeans.fit(clustering_sc)
Ausgabe von Clustering-Ergebnissen in eine Tabelle
an_data["result_clustering"] = clusters.labels_
an_data.head()
hoge = clustering_sc
pca = PCA(n_components=2) #Geben Sie 2 für die Anzahl der Dimensionen an, die in einer zweidimensionalen Ebene ausgegeben werden sollen
pca.fit(hoge)
hoge_pca = pca.transform(hoge)
pca_data = pd.DataFrame(hoge_pca)
Vorbereitung der Grafikanzeige
import matplotlib as plt
%matplotlib inline #Für die Grafikanzeige mit Jupiter
Versuchen Sie, es als Streudiagramm für jede Clusterbezeichnung auszugeben, da es geclustert wurde.
for i in an_data["result_clustering"].unique():
tmp = pca_data.loc[pca_data["result_clustering"] == i]
plt.scatter(tmp[0], tmp[1], label=i)
plt.legend()
Recommended Posts