Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lernen Reduzierung von Daten auf 2D/3D und Visualisierung mit Matplotlib | Implementierung von PCA in Python
Dimensionsreduktion mit PCA

bookReduzierung von Daten auf 2D/3D und Visualisierung mit Matplotlib

Die Visualisierung von Daten mit den ersten zwei oder drei Hauptkomponenten ermöglicht das Erkennen von Mustern und Clustern, die im hochdimensionalen Raum verborgen sind. Durch die Projektion der Daten auf diese Komponenten werden Gruppierungen sichtbar, die die Struktur des Datensatzes offenbaren. Dies ist besonders nützlich bei Datensätzen wie Iris, da die Reduktion auf 2D oder 3D die Unterscheidung zwischen Klassen erleichtert und das Verständnis der Daten visuell unterstützt.

123456789101112131415161718192021222324252627282930313233343536
# 2D scatter plot of the first two principal components import matplotlib.pyplot as plt import seaborn as sns from sklearn.decomposition import PCA from sklearn.datasets import load_iris from sklearn.preprocessing import StandardScaler # Load and scale the data data = load_iris() X = data.data X_scaled = StandardScaler().fit_transform(X) # Fit PCA and transform to 2D pca = PCA(n_components=2) X_pca = pca.fit_transform(X_scaled) plt.figure(figsize=(8,6)) sns.scatterplot(x=X_pca[:,0], y=X_pca[:,1], hue=data.target, palette='Set1', s=60) plt.xlabel('Principal Component 1') plt.ylabel('Principal Component 2') plt.title('PCA - Iris Dataset (2D)') plt.legend(title='Species') plt.show() # 3D visualization from mpl_toolkits.mplot3d import Axes3D pca_3d = PCA(n_components=3) X_pca_3d = pca_3d.fit_transform(X_scaled) fig = plt.figure(figsize=(8,6)) ax = fig.add_subplot(111, projection='3d') scatter = ax.scatter(X_pca_3d[:,0], X_pca_3d[:,1], X_pca_3d[:,2], c=data.target, cmap='Set1', s=60) ax.set_xlabel('PC1') ax.set_ylabel('PC2') ax.set_zlabel('PC3') plt.title('PCA - Iris Dataset (3D)') plt.show()
copy

Das 2D-Streudiagramm zeigt, wie die Stichproben entlang der ersten beiden Hauptkomponenten verteilt sind, wobei häufig Cluster sichtbar werden, die unterschiedlichen Klassen entsprechen. Das 3D-Diagramm kann eine noch stärkere Trennung ermöglichen, wenn die dritte Komponente eine signifikante Varianz beiträgt. Durch diese Visualisierung erhält man Einblicke, wie gut PCA die wesentliche Struktur des Datensatzes erfasst und ob eine weitere Dimensionsreduktion für die Analyse sinnvoll sein könnte.

question mark

Was deutet es typischerweise an, wenn Proben verschiedener Klassen in einem 2D- oder 3D-PCA-Diagramm eines Datensatzes deutliche Cluster bilden?

Select the correct answer

War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 3. Kapitel 3

Fragen Sie AI

expand

Fragen Sie AI

ChatGPT

Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen

Suggested prompts:

Can you explain what principal components are in simple terms?

How do I interpret the clusters in the PCA plots?

What should I do if the classes are not well separated in the PCA visualization?

Awesome!

Completion rate improved to 8.33

bookReduzierung von Daten auf 2D/3D und Visualisierung mit Matplotlib

Swipe um das Menü anzuzeigen

Die Visualisierung von Daten mit den ersten zwei oder drei Hauptkomponenten ermöglicht das Erkennen von Mustern und Clustern, die im hochdimensionalen Raum verborgen sind. Durch die Projektion der Daten auf diese Komponenten werden Gruppierungen sichtbar, die die Struktur des Datensatzes offenbaren. Dies ist besonders nützlich bei Datensätzen wie Iris, da die Reduktion auf 2D oder 3D die Unterscheidung zwischen Klassen erleichtert und das Verständnis der Daten visuell unterstützt.

123456789101112131415161718192021222324252627282930313233343536
# 2D scatter plot of the first two principal components import matplotlib.pyplot as plt import seaborn as sns from sklearn.decomposition import PCA from sklearn.datasets import load_iris from sklearn.preprocessing import StandardScaler # Load and scale the data data = load_iris() X = data.data X_scaled = StandardScaler().fit_transform(X) # Fit PCA and transform to 2D pca = PCA(n_components=2) X_pca = pca.fit_transform(X_scaled) plt.figure(figsize=(8,6)) sns.scatterplot(x=X_pca[:,0], y=X_pca[:,1], hue=data.target, palette='Set1', s=60) plt.xlabel('Principal Component 1') plt.ylabel('Principal Component 2') plt.title('PCA - Iris Dataset (2D)') plt.legend(title='Species') plt.show() # 3D visualization from mpl_toolkits.mplot3d import Axes3D pca_3d = PCA(n_components=3) X_pca_3d = pca_3d.fit_transform(X_scaled) fig = plt.figure(figsize=(8,6)) ax = fig.add_subplot(111, projection='3d') scatter = ax.scatter(X_pca_3d[:,0], X_pca_3d[:,1], X_pca_3d[:,2], c=data.target, cmap='Set1', s=60) ax.set_xlabel('PC1') ax.set_ylabel('PC2') ax.set_zlabel('PC3') plt.title('PCA - Iris Dataset (3D)') plt.show()
copy

Das 2D-Streudiagramm zeigt, wie die Stichproben entlang der ersten beiden Hauptkomponenten verteilt sind, wobei häufig Cluster sichtbar werden, die unterschiedlichen Klassen entsprechen. Das 3D-Diagramm kann eine noch stärkere Trennung ermöglichen, wenn die dritte Komponente eine signifikante Varianz beiträgt. Durch diese Visualisierung erhält man Einblicke, wie gut PCA die wesentliche Struktur des Datensatzes erfasst und ob eine weitere Dimensionsreduktion für die Analyse sinnvoll sein könnte.

question mark

Was deutet es typischerweise an, wenn Proben verschiedener Klassen in einem 2D- oder 3D-PCA-Diagramm eines Datensatzes deutliche Cluster bilden?

Select the correct answer

War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 3. Kapitel 3
some-alt