【R笔记】标准化

    不同的指标或变量的原始值在单位、量纲、取值范围等方面会有较大差异,因此,在处理较多变量的数据时,需要先对数据进行标准化,使不同变量具有可比性。

    常用的标准化方法有:

(1)最大-最小值标准化(离差标准化)。

\frac{x-min}{max-min}

    此方法将数值映射到[0,1]。该方法的缺点是,容易受到最大最小值的影响。

方法:vegan包,decostand(data,method="range")。行:margin=1,列:margin=2。

(2)标准差标准化。

\frac{x-\bar{x} }{\sigma }

    \bar{x} \是原始数据的平均值,\sigma 是原始数据的标准差,此方法得到均值为0,标准差为1的数据集。为减小离群点的影响,可用中位数代替均值,用绝对标准差代替标准差。

方法:scale(data,center=T,scale=T) 或  decostand(data,"standardize")。

(3)0-1数据(有-无数据)

方法:decostand(data,method="pa")

(4)每个数值除以该行或该列的最大值

方法:decostand(data,method="max")

(5)每个数值除以该行或该列的总和

方法:decostand(data,method="total")

(6)用排名代替具体数值

方法:decostand(data,method="rank"),默认为行。

> data

    lie

hang C D E

   A 1 3 5

   B 2 4 6

> decostand(data,"rank")

    lie

hang C D E

   A 1 2 3

   B 1 2 3

(7)decostand()还提供了chi.square、hellinger、log等方法。


参考:《R语言数据分析与挖掘实战》张良均等;《数量生态学》赖江山译。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容