задание 1
Вывести результаты по собственным значениям и
дисперсии
eig.val <- get_eigenvalue(res.pca)
eig.val
## eigenvalue variance.percent cumulative.variance.percent
## Dim.1 26.6564125 95.201473 95.20147
## Dim.2 0.6583989 2.351425 97.55290
## Dim.3 0.3853713 1.376326 98.92922
## Dim.4 0.2998172 1.070776 100.00000
только 1 компонента объясняет 95% доли дисперсии. 3 остальные
имеют минимальное значение
тогда мне непонятно, что означает база….
эти 5 наблюдений… я думала, это факторы какие-то
fviz_eig(res.pca, addlabels = TRUE, ylim = c(0, 50))
это наблюдается на графике
по координатам (корреляциям)
var <- get_pca_var(res.pca)
var
## Principal Component Analysis Results for variables
## ===================================================
## Name Description
## 1 "$coord" "Coordinates for the variables"
## 2 "$cor" "Correlations between variables and dimensions"
## 3 "$cos2" "Cos2 for the variables"
## 4 "$contrib" "contributions of the variables"
head(var$coord)
## Dim.1 Dim.2 Dim.3 Dim.4
## d1 0.9959931 0.08667675 0.02201425 0.0005284871
## d2 0.9856867 0.15604215 0.05619045 -0.0302516782
## d3 0.9932608 0.10879264 -0.02997603 -0.0264323415
## d4 0.9862426 0.13633891 -0.01250799 -0.0926322853
## d5 0.9937955 0.06158202 0.00799803 -0.0922719871
## d6 0.9840930 0.10641774 -0.06384742 -0.1271205906
head(var$cos2)
## Dim.1 Dim.2 Dim.3 Dim.4
## d1 0.9920022 0.007512859 4.846272e-04 2.792986e-07
## d2 0.9715783 0.024349153 3.157367e-03 9.151640e-04
## d3 0.9865669 0.011835838 8.985623e-04 6.986687e-04
## d4 0.9726745 0.018588299 1.564499e-04 8.580740e-03
## d5 0.9876296 0.003792345 6.396848e-05 8.514120e-03
## d6 0.9684391 0.011324735 4.076494e-03 1.615964e-02
таблица для графика качества на основе квадрата косинуса: тоже видим 4 компонента, из которых только первый значим
head(var$contrib)
## Dim.1 Dim.2 Dim.3 Dim.4
## d1 3.721439 1.141080 0.12575590 9.315629e-05
## d2 3.644820 3.698237 0.81930512 3.052406e-01
## d3 3.701049 1.797670 0.23316792 2.330315e-01
## d4 3.648933 2.823258 0.04059719 2.861990e+00
## d5 3.705036 0.575995 0.01659918 2.839770e+00
## d6 3.633044 1.720042 1.05780922 5.389832e+00
вклад в главные компоненты. у переменных серьезных вклад в первую компоненту
head(var$coord, 4)
## Dim.1 Dim.2 Dim.3 Dim.4
## d1 0.9959931 0.08667675 0.02201425 0.0005284871
## d2 0.9856867 0.15604215 0.05619045 -0.0302516782
## d3 0.9932608 0.10879264 -0.02997603 -0.0264323415
## d4 0.9862426 0.13633891 -0.01250799 -0.0926322853
Корреляция между переменной и главной компонентой используется в качестве координаты переменной на графике
fviz_pca_var(res.pca, col.var = "black")
из-за того, что компонента фактически одна, все координаты смещены
вправо, ближе к оси Dim1.
смотрим качество - насколько хорошо
переменная описывается главной компонентой
library("corrplot")
## corrplot 0.92 loaded
corrplot(var$cos2, is.corr=FALSE)
fviz_cos2(res.pca, choice = "var", axes = 1:2)
результаты друг другу аналогичны
fviz_pca_var(res.pca, col.var = "cos2",
gradient.cols = c("#00AFBB", "#E7B800", "#FC4E07"),
repel = TRUE # Avoid text overlapping
)
на данном графике градиентно раскрашены значения.
по вкладам
Чем выше вклад, тем больше переменная “вкладывает”
в компоненту.Переменные, которые коррелируют и с первой компонентой PC1
(Dim.1) и со второй компонентой (PC2, Dim.2) являются самыми главными в
описании измечивости данных в наборе. Переменные, которые не коррелируют
ни с одной компонентой или коррелируют с последними компонентами не
являются важными и могут быть исключены из анализа.
head(var$contrib, 4)
## Dim.1 Dim.2 Dim.3 Dim.4
## d1 3.721439 1.141080 0.12575590 9.315629e-05
## d2 3.644820 3.698237 0.81930512 3.052406e-01
## d3 3.701049 1.797670 0.23316792 2.330315e-01
## d4 3.648933 2.823258 0.04059719 2.861990e+00
library("corrplot")
corrplot(var$contrib, is.corr=FALSE)
на графике видно, что все переменные коррелируют с первой
компонентой - мы помним, что значима получилась только она.
видимо,
наибольший вес в этот тест вносят d7,d8, d9. d11. d15, d18. d23.d27,
d28.
fviz_pca_var(res.pca, col.var = "contrib",
gradient.cols = c("#00AFBB", "#E7B800", "#FC4E07")
)
это график вклада переменных в тест
задание 3 - непонятно,
чем отличается от первого. хотела спросить на паре. вернее как там по
группам измерять, если их нет
задание 4 - анализ соответствий
по изменениям в природе летом
klimat<-read_sav("C:/Users/malya/Desktop/База_КлимРиск_2023.sav")
library("gplots")
##
## Присоединяю пакет: 'gplots'
## Следующий объект скрыт от 'package:stats':
##
## lowess
library(dplyr)
##
## Присоединяю пакет: 'dplyr'
## Следующие объекты скрыты от 'package:stats':
##
## filter, lag
## Следующие объекты скрыты от 'package:base':
##
## intersect, setdiff, setequal, union
library(questionr)
V16<-klimat %>%
select(contains("V16"))
V16<-V16[,-c(10,11)]
table_V16_region<-cross.multi.table(V16, klimat$Region, true.codes=list("да"), freq=FALSE)
table_V16_region<-table_V16_region[,-4]
colnames(table_V16_region)<-c("АК", "РА", "РТ")
rownames(table_V16_region)<-c("Засуха", "Жара", "Дожди", "Камнепады", "Затопление", "Мерзлота", "Ветер", "НАсекомые", "Вредители")
res.ca <- CA(table_V16_region, graph = FALSE)
get_eigenvalue(res.ca)
## eigenvalue variance.percent cumulative.variance.percent
## Dim.1 0.07085082 84.15681 84.15681
## Dim.2 0.01333823 15.84319 100.00000
получилось два измерения, описывающих 84% и 15,8% дисперсии.
row <- get_ca_row(res.ca)
row
## Correspondence Analysis - Results for rows
## ===================================================
## Name Description
## 1 "$coord" "Coordinates for the rows"
## 2 "$cos2" "Cos2 for the rows"
## 3 "$contrib" "contributions of the rows"
## 4 "$inertia" "Inertia of the rows"
row$cos2
## Dim 1 Dim 2
## Засуха 0.9923788 0.007621233
## Жара 0.9490015 0.050998504
## Дожди 0.9401817 0.059818305
## Камнепады 0.7425789 0.257421102
## Затопление 0.9832683 0.016731714
## Мерзлота 0.7042489 0.295751054
## Ветер 0.6654422 0.334557785
## НАсекомые 0.5775468 0.422453231
## Вредители 0.6973866 0.302613434
все переменные лучше описываются первым измерением Немного хуже:
насекомые, вредители, ветер, камнепады
row$contrib
## Dim 1 Dim 2
## Засуха 6.717048 0.274014
## Жара 8.195487 2.339439
## Дожди 30.983030 10.471110
## Камнепады 9.646569 17.763189
## Затопление 17.104878 1.546090
## Мерзлота 11.995053 26.757701
## Ветер 7.084298 18.919261
## НАсекомые 1.808883 7.028272
## Вредители 6.464754 14.900922
в первое измерение наибольший вклад внесли затопление, дожди,
выход мерзлоты. Во второе - камнепады, мерзлота, ветер, вредители.
fviz_ca_biplot(res.ca, repel = TRUE)
Природное изменение, которое находится с той же стороны, что и
регион, имеет большие значения именно по региону