Перша головна компонента
Перша головна компонента даних — це напрям, у якому дані мають найбільшу варіацію. У цій вправі вам потрібно скористатися PCA, щоб знайти першу головну компоненту для вимірювань довжини та ширини зразків зерна і показати її на точковій діаграмі у вигляді стрілки.
Масив grains містить довжину та ширину зразків зерна. PyPlot (plt) і PCA уже імпортовано для вас.
Ця вправа є частиною курсу
Наглядове навчання в Python
Інструкції до вправи
- Побудуйте точкову діаграму вимірювань зерна. Це вже зроблено за вас.
- Створіть екземпляр
PCAз назвоюmodel. - Навчіть модель на даних
grains. - Витягніть координати середнього значення даних за допомогою атрибута
.mean_об'єктаmodel. - Отримайте першу головну компоненту моделі через атрибут
.components_[0,:]. - Відобразіть першу головну компоненту як стрілку на точковій діаграмі за допомогою функції
plt.arrow(). Потрібно вказати перші два аргументи —mean[0]іmean[1].
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
# 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()