Den första huvudkomponenten
Den första huvudkomponenten i en datamängd är den riktning där datan varierar mest. I den här övningen ska du använda PCA för att hitta den första huvudkomponenten för längd- och breddmätningarna av sädeskornen, och sedan visualisera den som en pil i ett spridningsdiagram.
Arrayen grains innehåller längd och bredd för sädeskornssamplarna. PyPlot (plt) och PCA har redan importerats åt dig.
Den här övningen är en del av kursen
Oövervakad inlärning i Python
Övningsinstruktioner
- Skapa ett spridningsdiagram över sädeskornsdata. Det här steget är redan gjort åt dig.
- Skapa en instans av
PCAmed namnetmodel. - Anpassa modellen till
grains-datan. - Extrahera koordinaterna för datans medelvärde med attributet
.mean_frånmodel. - Hämta den första huvudkomponenten från
modelmed attributet.components_[0,:]. - Rita den första huvudkomponenten som en pil i spridningsdiagrammet med funktionen
plt.arrow(). Du behöver ange de två första argumenten –mean[0]ochmean[1].
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
# Make a scatter plot of the untransformed points
plt.scatter(grains[:,0], grains[:,1])
# Create a PCA instance: model
model = ____
# Fit model to points
____
# Get the mean of the grain samples: mean
mean = ____
# Get the first principal component: first_pc
first_pc = ____
# Plot first_pc as an arrow, starting at mean
plt.arrow(____, ____, first_pc[0], first_pc[1], color='red', width=0.01)
# Keep axes on same scale
plt.axis('equal')
plt.show()