来源:http://blog.sina.com.cn/s/blog_670445240101nlss.html

1   背景介绍

这是一种排序方法。假设我们对N个样方有了衡量它们之间差异即距离的数据,就可以用此方法找出一个直角坐标系(最多N-1维),使N个样方表示成N个点,而使点间的欧氏距离的平方正好等于原来的差异数据。

由于样方间的差异数据可以由各种方式给出,只要对一些差异进行定量描述,如甲型,乙型,丙型等,就可以求出样方的数量坐标,实现定性到定量的转变。

主坐标方法简单、明确、效率很高。它与主分量分析一样,最后找出的坐标系不仅正交, 而且第一轴、第二轴……依次按N个点在该轴上的方差大小顺序排列,N个点对不同两个轴都不相关。所以也可用较少的维数,特别是直观的二、三维空间去排列样方,而使信息的损失最少。

它与主分量分析不同之处在于:不是先给出N个点的坐标,去找出刚性旋转的坐标;而是只知其间的距离要去重新建立各点的坐标。因此可以不限于度量(metrtic)的相似系数公式,Pernitec(1977)采用数量数据对于寒温带森林和草地进行主坐标分析,他认为非度量(non-mertic)相似系数比度量相似系数效果更佳。

2    PCoA计算步骤

1           构成差异矩阵M

2           构成离差距阵A

就求出A矩阵的元素。以后可知,它是最后求出的N个样方点坐标矩阵的离差矩阵。这里不必证明而列出A具有的三个性质:

1,  A是对称的,即aij~aji(i,j=1,2,……,N)

2,  A的行和及列和均等于0,即Ai.=A.i=0;

3,  mij2=mji2=aii+ajj-2aij( i,j=1,2,……,N).

3           求出N个样方的坐标矩阵C

因为A是NxN的对称实矩阵,所以必存在着酉矩阵(正交矩阵)U将A变换成对角矩B,即 UAU’=B,或A=U’BU。其中B的主对角线元素为λ1, λ2,……λN,分别 是A的N个依大小排 列的特征根,而U的每一行向量是相应的特征向量。

4           排列N个样方

根据C给出的N个样方的坐标值,可以在s维空间中排列样方,而不损失信息。 与主分量分析一 样 , 可以在较低K(< s)维空间中排列样方, 则保留的信息百分比为 :

3    参考资料:

1           PCoA作图:http://blog.sina.com.cn/s/blog_670445240102uw6u.html

2    http://qzongy007.blog.sohu.com/261236424.html

PCoA主坐标分析的更多相关文章

  1. PCA主成份分析

    1   背景介绍 真实的训练数据总是存在各种各样的问题: 1. 比如拿到一个汽车的样本,里面既有以“千米/每小时”度量的最大速度特征,也有“英里/小时”的最大速度特征,显然这两个特征有一个多余. 2. ...

  2. 【主成份分析】PCA推导

    ### 主成份分析(Pricipal components analysis PCA) 假设空间$R^{n}$中有m个点{$x^{1},......,x^{n}$},希望压缩,对每个$x^{i}$都有 ...

  3. uboot主Makefile分析(t配置和编译过程详解)

    1.编译uboot前需要三次make make distcleanmake x210_sd_configmake -j4 make distclean为清楚dist文件. make x210_sd_c ...

  4. uboot主Makefile分析

    VERSION = 1 PATCHLEVEL = 3 SUBLEVEL = 4 EXTRAVERSION = U_BOOT_VERSION = $(VERSION).$(PATCHLEVEL).$(S ...

  5. PIE SDK主/次要分析

    1.算法功能简介 主要分析功能是采用类似卷积滤波的方法将较大类别中的虚假像元归到该类中,首先定义一个变换核尺寸,然后用变换核中占主要地位(像元最多)类别数代替中心像元的类别数,次要分析相反,用变换核中 ...

  6. principal components analysis 主成份分析

    w http://deeplearning.stanford.edu/wiki/index.php/主成份分析 主成分分析(PCA)及其在R里的实现 - jicf的日志 - 网易博客  http:// ...

  7. uboot总结:uboot配置和启动过程1(主Makefile分析)

    说明:文件位置:在uboot的目录下,文件名为:Makefile 从文件的头部开始分析 1.24-29行,配置uboot的版本信息. VERSION = PATCHLEVEL = SUBLEVEL = ...

  8. uboot 主Makefile 分析。

    本文以uboot_1.1.6 对应的CPU是S3C2440 为例 uboot_1.1.6 根目录下的主Makefile开头: VERSION = PATCHLEVEL = SUBLEVEL = EXT ...

  9. uboot 主Makefile分析

    一. Makefile 配置 1.1. make xxx_config 1.1.1. 笔者实验时是make x210_sd_config a. x210_sd_config是Makefile下的一个目 ...

随机推荐

  1. SEO中TDK写法的意思以及注意事项

    在SEO中,所谓的TDK其实就是title.description.keywords这三个标签,这三个标签在网站的优化过程中,至关重要所以今天童童来和大家分享下,如何去写好TDK标签! 1.title ...

  2. PHP基础 windows环境下安装Apache Mysql PHP

    本篇文章主要是讲一下我自己安装wamp环境的一些步骤和见解,前方多图预警,慎入!!!!! PHP运行环境  : Linux下的三种安装方式:源码包安装.rpm包安装.集成环境安装(lnmp) wind ...

  3. javascript算法题判断输入年份是否是闰年

    用户输入一个年份,判断这个年是否是闰年.判断闰年条件:① 非整百年数除以4,无余为闰,有余不闰:② 整百年数除以400,无余为闰,有余不闰.比如:2000年,整百数年,就要用②公式,除以400,无余数 ...

  4. 深入理解ES6之—增强的数组功能

    创建数组 Array.of()方法 ES6为数组新增创建方法的目的之一,是帮助开发者在使用Array构造器时避开js语言的一个怪异点.Array.of()方法总会创建一个包含所有传入参数的数组,而不管 ...

  5. 完整教程--idea使用git进行项目管理

    第一部分: 安装 1. 下载地址:  https://git-scm.com/download/win; 如果速度慢, 使用 迅雷下载; 2. 点击安装, 然后下一步, 直到下面这个页面: 建议: 按 ...

  6. python 正则表达式之零宽断言

    零宽断言:用于查找特定内容之前或之后的内容,但并不包括特定内容本身.对于零宽断言来说,我认为最重要的一个概念是位置,零宽断言用于指定一个位置,这个位置应该满足一定的条件(它附近满足什么表达式),并且这 ...

  7. Prism for WPF初探(构建简单的模块化开发框架)

    先简单的介绍一下Prism框架,引用微软官方的解释: Prism provides guidance to help you more easily design and build, flexibl ...

  8. 运行期以索引获取tuple元素-C++17

    //运行期以索引获取tuple元素-C++17 //需支持C++17及以上标准的编译器,VS2017 15.5.x.CodeBlocks 16.01 gcc 7.2 //参见:http://purec ...

  9. ASP.NET Core 使用 Redis 客户端

    Mac OS 安装 Redis(用于连 Redis 服务器,方便查看数据):https://redis.io/topics/quickstart wget http://download.redis. ...

  10. ATM程序设计

    package com.arthur.object; import java.util.Scanner; /*** * 简单的ATM存取款程序 1.登陆页面 2.登陆 3.菜单:1,查询,2,存款,3 ...