Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Leer Gegevens Reduceren Naar 2D/3D en Visualiseren Met Matplotlib | PCA Implementeren in Python
Quizzes & Challenges
Quizzes
Challenges
/
Dimensionaliteitsreductie met PCA

bookGegevens Reduceren Naar 2D/3D en Visualiseren Met Matplotlib

Het visualiseren van gegevens met de eerste twee of drie hoofdcomponenten helpt bij het identificeren van patronen en clusters die verborgen zijn in een hoog-dimensionale ruimte. Door gegevens op deze componenten te projecteren, worden groeperingen zichtbaar die de structuur van de dataset onthullen. Dit is vooral nuttig voor datasets zoals Iris, waarbij het reduceren naar 2D of 3D het eenvoudiger maakt om klassen te onderscheiden en de gegevens visueel te interpreteren.

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

De 2D scatter plot toont hoe de monsters verdeeld zijn over de eerste twee hoofdcomponenten, waarbij vaak clusters zichtbaar worden die overeenkomen met verschillende klassen. De 3D-plot kan nog meer scheiding bieden als de derde component een significante variantie toevoegt. Door de gegevens op deze manier te visualiseren, ontstaat inzicht in hoe goed PCA de essentiële structuur van de dataset vastlegt en of verdere dimensionale reductie geschikt kan zijn voor de analyse.

question mark

Wat geeft het doorgaans aan als samples van verschillende klassen duidelijke clusters vormen in een 2D- of 3D-PCA-grafiek van een dataset?

Select the correct answer

Was alles duidelijk?

Hoe kunnen we het verbeteren?

Bedankt voor je feedback!

Sectie 3. Hoofdstuk 3

Vraag AI

expand

Vraag AI

ChatGPT

Vraag wat u wilt of probeer een van de voorgestelde vragen om onze chat te starten.

bookGegevens Reduceren Naar 2D/3D en Visualiseren Met Matplotlib

Veeg om het menu te tonen

Het visualiseren van gegevens met de eerste twee of drie hoofdcomponenten helpt bij het identificeren van patronen en clusters die verborgen zijn in een hoog-dimensionale ruimte. Door gegevens op deze componenten te projecteren, worden groeperingen zichtbaar die de structuur van de dataset onthullen. Dit is vooral nuttig voor datasets zoals Iris, waarbij het reduceren naar 2D of 3D het eenvoudiger maakt om klassen te onderscheiden en de gegevens visueel te interpreteren.

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

De 2D scatter plot toont hoe de monsters verdeeld zijn over de eerste twee hoofdcomponenten, waarbij vaak clusters zichtbaar worden die overeenkomen met verschillende klassen. De 3D-plot kan nog meer scheiding bieden als de derde component een significante variantie toevoegt. Door de gegevens op deze manier te visualiseren, ontstaat inzicht in hoe goed PCA de essentiële structuur van de dataset vastlegt en of verdere dimensionale reductie geschikt kan zijn voor de analyse.

question mark

Wat geeft het doorgaans aan als samples van verschillende klassen duidelijke clusters vormen in een 2D- of 3D-PCA-grafiek van een dataset?

Select the correct answer

Was alles duidelijk?

Hoe kunnen we het verbeteren?

Bedankt voor je feedback!

Sectie 3. Hoofdstuk 3
some-alt