Функции моих компонентов намного короче данных - PullRequest
1 голос
/ 10 апреля 2019

Я пытаюсь запустить PCA на данных о популяциях ламинарии в 140 временных точках и пространстве. Тем не менее, мои основные функции компонента содержат только 38 точек, тогда как мои данные имеют 140. Разве функции ПК не должны быть такими же длинными, как количество строк данных, которые вы передаете prcomp?

Я использовал этот точный код на очень похожей матрице данных, и функции ПК содержали 140 точек, как и данные.

setwd("C:/Users/hamiltsa/Desktop/OSU/Kelp/Data2")

#Import my dataframe with 140 rows (timepoints) and 13 columns (measurements for each segment of coastline)
d = read.csv("Kelp_segments_quarters_maxes_wide.csv")
head(d)
   Seg1 Seg6 Seg7  Seg8  Seg15 Seg17  Seg18 Seg28 Seg32 Seg36 Seg38 Seg44 Seg53
1    NA   NA   NA    NA     NA    NA     NA    NA    NA    NA    NA    NA    NA
2  7362 1341  297 11664   9045 14301   8109     0   567     0 17001  2412  1152
3 13788 2160 1665 37611 170568 30501 292887     0     0     0     0   324     0
4    NA   NA   NA    NA     NA    NA     NA    NA    NA    NA    NA   459     0
5  3942    0    0  8325  30951    NA   2799     0     0    NA   567   144  1017
6    NA   NA    0  4446   7632 32571  10188     0     0     0 13932  3906     0

PCA2 = prcomp(na.omit(d3), scale = TRUE, center = TRUE) #Don't need to set scale = TRUE because all variables have some units (i.e percent cover)
summary(PCA2)
plot(PCA2$x[,'PC1'], type = "l")

Когда я строю свой первый компьютер с моим PCA, я ожидаю, что он покажет функцию с 140 временными точками. Тем не менее, он показывает функцию с 38 временными точками. Я неправильно понимаю, как работает PCA или что-то не так с моим кодом?

...