Gegevens 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()
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.
Bedankt voor je feedback!
Vraag AI
Vraag AI
Vraag wat u wilt of probeer een van de voorgestelde vragen om onze chat te starten.
Geweldig!
Completion tarief verbeterd naar 8.33
Gegevens 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()
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.
Bedankt voor je feedback!