Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/spring-mvc/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何检索特征值&;R?_R_Pca_R Raster - Fatal编程技术网

如何检索特征值&;R?

如何检索特征值&;R?,r,pca,r-raster,R,Pca,R Raster,在对一堆光栅进行PCA之后(在2014光栅包文档中),我想回顾一下我的特征值、特征向量和加载 对princomp的典型调用返回scree plot、变化比例、累积比例-summary()、print()、hist()-似乎没有从我的RasterBrick输出中提取信息。下面是示例代码: #bring in rasterBrick logo <- brick(system.file("external/rlogo.grd", package="raster")) #select rando

在对一堆光栅进行PCA之后(在2014光栅包文档中),我想回顾一下我的特征值、特征向量和加载

对princomp的典型调用返回scree plot、变化比例、累积比例-summary()、print()、hist()-似乎没有从我的RasterBrick输出中提取信息。下面是示例代码:

#bring in rasterBrick
logo <- brick(system.file("external/rlogo.grd", package="raster")) 
#select random samples & do PCA
sr <- sampleRandom(logo, 100) 
pca <- princomp(sr) 
# to visualize pcs as rasters
x <- predict(logo, pca, index=1:3)
plot(x)

##ANSWERED QUESTION
summary(pca) # importance of components
plot (pca) # scree plot
loadings (pca) #eigens 
#引入rasterBrick

logo特征向量/载荷存储在由
princomp
返回的模型对象的
loadings
元素中。有关
princomp
(运行
?princomp
)的信息,请参阅帮助的
部分。以下是关键部分:

princomp返回类为“princomp”的列表,其中包含以下内容 组成部分:

荷载可变荷载矩阵(即 列包含特征向量)。这属于“荷载”类:见 其打印方法的加载

您可以使用
加载(pca)
访问加载。下面的第一个矩阵包含每个主分量的特征向量

loadings(pca)

Loadings:
      Comp.1 Comp.2 Comp.3
red    0.588 -0.505  0.631
green  0.584 -0.274 -0.764
blue   0.559  0.818  0.134

               Comp.1 Comp.2 Comp.3
SS loadings     1.000  1.000  1.000
Proportion Var  0.333  0.333  0.333
Cumulative Var  0.333  0.667  1.000
summary
功能可为您提供每台电脑解释的差异比例:

summary(pca)

Importance of components:
                            Comp.1      Comp.2       Comp.3
Standard deviation     136.9251939 16.85462507 1.4842831706
Proportion of Variance   0.9849601  0.01492417 0.0001157405
Cumulative Proportion    0.9849601  0.99988426 1.0000000000
使用任何
R
对象都可以执行的另一项操作是运行
str
,它将告诉您对象包含的内容。例如,请参见下面的
princomp
模型对象包含的内容,并注意其中一个元素是
loadings

str(pca)

List of 7
 $ sdev    : Named num [1:3] 136.5 17.63 1.43
  ..- attr(*, "names")= chr [1:3] "Comp.1" "Comp.2" "Comp.3"
 $ loadings: loadings [1:3, 1:3] 0.587 0.583 0.562 -0.515 -0.267 ...
  ..- attr(*, "dimnames")=List of 2
  .. ..$ : chr [1:3] "red" "green" "blue"
  .. ..$ : chr [1:3] "Comp.1" "Comp.2" "Comp.3"
 $ center  : Named num [1:3] 162 165 173
  ..- attr(*, "names")= chr [1:3] "red" "green" "blue"
 $ scale   : Named num [1:3] 1 1 1
  ..- attr(*, "names")= chr [1:3] "red" "green" "blue"
 $ n.obs   : int 100
 $ scores  : num [1:100, 1:3] 85.4 110.4 151.3 149 22.8 ...
  ..- attr(*, "dimnames")=List of 2
  .. ..$ : NULL
  .. ..$ : chr [1:3] "Comp.1" "Comp.2" "Comp.3"
 $ call    : language princomp(x = sr)
 - attr(*, "class")= chr "princomp"
 - attr(*, "class")= chr "princomp"

谢谢,虽然我在用一块粗糙的砖块运行pca,但很多这样的关系似乎正在破裂。例如,正常pca摘要调用返回标准偏差、方差比例、累积比例。但是,rasterbrick pca没有给我这个信息。。。然而这里是示例代码
徽标的一个峰值,您所说的“…没有给我这个信息…”是什么意思?您是否遇到了错误,或者输出值与预期值完全不同?我运行了你的代码,它似乎工作。如果您更新了您的问题,添加了您运行的代码、代码的输出以及关于哪些内容不是您想要或期望的内容的描述,这将非常有用。希望更新后的问题能够澄清这一点。代码运行;但是,输出与pca的正常输出不一致。看来我只是在获取有关电脑光栅的信息。我可能误解了输出,但这就是为什么我要求更广泛的社区提供见解…请参阅我答案的更新。您是在光栅上还是在PCA模型对象上运行
summary
?我一直在光栅对象“x”上运行
summary
print
,我现在看到的是不正确的。。。感谢与我一起完成这项工作,在R中分析光栅数据是一次学习经历!