1

我正在尝试对超过 140 个时间点和空间的海带种群数据运行 PCA。但是,我的主成分函数只有38个点,而我的数据有140个。PC函数不应该和你给prcomp的数据行数一样长吗?

我在一个非常相似的数据矩阵上使用了这个精确的代码,PC 函数中有 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 的第一台 PC 时,我希望它显示一个具有 140 个时间点的函数。但是,它显示了一个具有 38 个时间点的函数。我误解了 PCA 的工作原理还是我的代码有问题?

4

0 回答 0