O primeiro componente principal
O primeiro componente principal dos dados é a direção na qual os dados variam mais. Neste exercício, você deve usar o site PCA para encontrar o primeiro componente principal das medidas de comprimento e largura das amostras de grãos e representá-lo como uma seta no gráfico de dispersão.
A matriz grains
fornece o comprimento e a largura das amostras de grãos. O PyPlot (plt
) e o PCA
já foram importados para você.
Este exercício faz parte do curso
Aprendizado não supervisionado em Python
Instruções de exercício
- Faça um gráfico de dispersão das medições de grãos. Isso foi feito para você.
- Crie uma instância
PCA
chamadamodel
. - Ajuste o modelo aos dados do site
grains
. - Extraia as coordenadas da média dos dados usando o atributo
.mean_
demodel
. - Obtenha o primeiro componente principal de
model
usando o atributo.components_[0,:]
. - Trace o primeiro componente principal como uma seta no gráfico de dispersão, usando a função
plt.arrow()
. Você precisa especificar os dois primeiros argumentos -mean[0]
emean[1]
.
Exercício interativo prático
Experimente este exercício preenchendo este código de exemplo.
# 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()