1. 首页 > 电脑手机 >

数据标准化的方法_数据处理方法

数据标准化方法:该如何选择?

原文链接:

数据标准化的方法_数据处理方法数据标准化的方法_数据处理方法


数据标准化方法:该如何选择?

什么是数据标准化?

在微生物组学数据分析之前,我们常常需要根据数据量纲的不同以及分析方法的需要对数据进行各种预处理,也即数据标准化。 数据标准化的目的是使数据的总体符合某种要求,例如使数据总体符合正态分布以方便参数检验、使数据范围相同以方便比较分析、使数据分布均匀以方便作图展示等 。我们必须知道不同标准化方法的内涵,从而在实际研究中可以选择正确的数据标准化方法。

首先我们介绍一下数据转换。简单数据转换也即对整体数据进行简单运算,数据转换的目的主要有三个,一是改变数据结构,例如 非线性通过平方根、对数转换为线性 ;二是改变数据范围,便于比较和作图分析,例如数据变化特别大的可以进行对数转换来缩小属性范围;三是改变数据分布,使得样本偏离标准分布太远的更加接近标准分布(例如正态分布)。常见的数据转换有以下几种:

对数转换 :将数据(样本观察值)取自然对数(或者其他数为底的对数),可以使用log()函数来实现(log1p()可以将数据加1后取自然对数)。若是数据中有0或负值,可以全部数据加上一个数转换为正数。一般来说自然对数转换可以使0~1范围内的数据范围变大,可以使>1范围内数据范围变紧凑。

平方根转换 :将数据全部取平方根,可以使用sqrt(x)或者x^0.5来实现。类似的还有立方根转换、四次方根转换,偶数次方根要求数据非负。如果数据结构为二次关系,平方根转换后平方根转换可以使数据范围变小。

倒数转换 :将数据全部取倒数,也即1/x,倒数转换使0~1范围内的数据范围变大,使>1范围内数据范围变紧凑,而且转换后数据为倒序。

数据转换仅仅是对数据中每个观察值的独立处理,而标准化则涉及到数值之间的处理。下面我们以生态学常用的vegan包中的decostand()函数为例,分析不同标准化方法的别,此函数使用方法如下:

decostand(x, method, MARGIN, range.global, logbase = 2, na.rm=FALSE, ...)

其中x为向量或矩阵,method为标准化方法,MARGIN=1按行处理,MARGIN=2按列处理,不同标准化方法介绍如下:

①method="pa",将数据转换为有-无(1-0)类型,若分析不加权的情况群结构下可以使用;

②method="max",值标准化,将数据除以该行或者列的值(defaultMARGIN=2)。若数据非负,值标准化后数据全部位于0到1之间。

③method="total",总和标准化,将数据除以该行或者列的总和,也即求相对丰度(default MARGIN=1),总和标准化后数据全部位于0到1之间。

④method="range",Min-max标准化,将数据减去该行或者列的小值,并比上值与小值之(defaultMARGIN=2),Min-max标准化后的数据全部位于0到1之间。

⑤method="normalize",模标准化,将数据除以每行或者每列的平方和的平方根(default MARGIN=1),模标准化后每行、列的平方和为1(向量的模为1),也即在笛卡尔坐标系中到原点的欧氏距离为1,样品分布在一个圆弧上,彼此之间的距离为弦长,因此也称为弦转化。 在基于欧氏距离的 PCA 、 RDA 中分析群落数据可以将每个样方弦转化可以弥补欧氏距离的缺陷 。弦转化后的数据使用欧氏距离函数计算将得到 弦距离矩阵 。

⑥method="hellinger",hellinger转化,就是总和标准化数据的平方根(default MARGIN=1),hellinger转化后的数据使用欧氏距离函数计算将得到 hellinger 距离矩阵 。

⑦method="chi.square",卡方转化,在默认(defaultMARGIN=1)的情况下是数据除以行的和再除以列的和的平方根,卡方转化后的数据使用欧氏距离函数计算将得到 卡方距离矩阵 。

⑧Wisconsin转化,这个是使用伴随的函数wisconsin(),将数据除以该列值再除以该行总和,是值标准化和总和标准化的结合。

⑨method="standardize",z-score标准化,常用的标准化方法之一,将数据减去均值比上标准(default MARGIN=2),z-score标准化后数据均值为0,方为1,服从正态总体的数据标准化后服从标准正态分布。z-score标准化可以去除不同环境因子量纲的影响。

一般情况下,上面方法中默认MARGIN=1是默认对样品进行处理,默认MARGIN=2是默认对物种或者环境变量进行处理。

为了比较不同标准化方法对群落数据的影响,我们使用只有两个物种的虚拟群落进行处理,然后在笛卡尔坐标系进行展示(彼此之间是欧氏距离):

#假设虚拟数据:2个物种在5个样方的分布

spe1=c(0.1,0.2,0.3,0.4,0.5)

spe2=c(0.6,0.7,0.8,0.9,1)

ab=cbind(spe1,spe2)

rownames(ab)=LETTERS[1:5]

#各种标准化

ab1=decostand(ab, MARGIN=1, "total")

ab2=decostand(ab, MARGIN=1, "normalize")

ab3=decostand(ab, MARGIN=1, "hellinger")

ab4=decostand(ab, MARGIN=1, "chi.square")

ab5=wisconsin(ab)

#作图观察不同标准化方法距离异

par(mfrow=c(2,3))

plot(ab[,1], ab[,2], xlim=0:1, ylim=0:1, main="Rawdata")

text(ab[,1], ab[,2]-0.05, labels=rownames(ab), cex=1.2)

plot(ab1[,1], ab1[,2], xlim=0:1, ylim=0:1, main="Total")

text(ab1[,1], ab1[,2]-0.05, labels=rownames(ab), cex=1.2)

plot(ab2[,1], ab2[,2], xlim=0:1, ylim=0:1,main="Normalize")

text(ab2[,1], ab2[,2]-0.05, labels=rownames(ab), cex=1.2)

plot(ab3[,1], ab3[,2], xlim=0:1, ylim=0:1,main="Hellinger")

text(ab3[,1], ab3[,2]-0.05, labels=rownames(ab), cex=1.2)

plot(ab4[,1], ab4[,2], xlim=0:1, ylim=0:1,main="Chi.square")

text(ab4[,1], ab4[,2]-0.05, labels=rownames(ab), cex=1.2)

plot(ab5[,1], ab5[,2], xlim=0:1, ylim=0:1,main="Wisconsin")

text(ab5[,1], ab5[,2]-0.05, labels=rownames(ab), cex=1.2)

结果如下所示:

在没有处理的情况下,群落之间的欧氏距离相等,然而在生态学方面我们不这么看,因为B中物种1的数量是A的两倍,其群落异显然比D、E更大,五种处理方法标准化数据后的结果都比较好的证实了上面的猜想,尤其是两种。 然而在微生物生态中,我们倾向于认为微生物群落是一个整体,不同样品之间物种的相对丰度是有可比较的实际意义的,因此常用的就是总和标准化 (当然在不涉及丰度比较的聚类和排序分析中各种标准化方法都可以尝试,在传统群落研究里,虽然经常使用中心化等方法,但是需要使用盖度等对不同物种进行加权,因此直接进行总和标准化从某种意义上是使用相对丰度进行加权)。

对于物理、化学变量而言,则完全不同,因为环境变量的值具有性,例如温度1-2℃和21-22℃其异是一样的。环境变量由于量纲不同, 在计算距离矩阵(欧氏距离)、根据特征根提取的主成分分析、比较系数的回归分析之前,均需要进行 z-score标准化。

什么是数据的标准化?

数据标准化的意义:

1、数据的量纲不同;数量级别很大。

经过标准化处理后,原始数据转化为无量纲化指标测评值,各指标值处于同一数量级别,可进行综合测评分析。

如果直接用原始指标值进行分析,就会突出数值较高的指标在综合分析中的作用,相对削弱数值水平较低指标的作用。

2、避免数值问题:太大的数会引发数值问题。

3、平衡各特征的贡献。

一些分类器需要计算样本之间的距离(如欧氏距离),例如KNN。

如果一个特征值域范围非常大,那么距离计算就主要取决于这个特征,从而与实际情况相悖(比如这时实际情况是值域范围小的特征更重要)。

4、一些模型求解的需要:加快了梯度下降求解的速度。

数据标准化的方法:

1、Min-Max标准化。

2、标准标准化,也叫z-score标准化。

3、非线性归一化。

数据标准化的几种方法

在某些比较和评价的指标处理中经常会用到,去除数据的单位限制,将其转化为无量纲的纯数值,便于不同单位或量级的指标能够进行比较和加权。其中典型的就是数据的归一化处理,即将数据统一映射到[0,1]区间上,常见的数据归一化的方法有:min-max标准化(Min-max

normalization)也叫离标准化,是对原始数据的线性变换,使结果落到[0,1]区间,转换函数如下:其中max为样本数据的值,min为样本数据的小值。log函数转换通过以10为底的log函数转换的方法同样可以实现归一下,具体方法如下:看了下网上很多介绍都是x=log10(x),其实是有问题的,这个结果并非一定落到[0,1]区间上,应该还要除以log10(max),max为样本数据值,并且所有的数据都要大于等于1。而并非所有数据标准化的结果都映射到[0,1]区间上,其中常见的标准化方法就是Z标准化,也是SPSS中为常用的标准化方法:z-score

标准化(zero-mean

normalization)也叫标准标准化,经过处理的数据符合标准正态分布,即均值为0,标准为1,其转化函数为:其中μ为所有样本数据的均值,σ为所有样本数据的标准。

如何对数据进行标准化处理

建议使用SPSS软件,具体方法如下:

1.打开spss软件,然后将界面切换到变量视图。在编辑列中创建观察指标和类型。图中示例创建两个指标,一个作为自变量,另一个作为因变量,分别是gdd和城市化水平,代表人均gdp和城市化水平。

2、指标及类型建构建好后,就要输入数据到spss中了。切换到“数据视图”,数据可以自己手工输入,也可以从excel中或导入。

3、点击分析和回归,对数据进行线性回归分析。

4、进入线性回归设置界面,设置自变量,因变量。

5.设置完各种参数后,单击“确定”,spss将根据预设进行分析并自动输出分析结果。分析结果如图所示,并根据已知的分析结果,可知自变量和因变量符合线性回归模型。

常见的数据标准化方法和其公式以及优缺点

一、直线型无量纲化方法:又包括阀值法、指数法、标准化方法、比重法。二、折线型无量纲化方法:凸折线型法、凹折线型法、三折线型法。三、曲线型无量纲化方法 。目前常见的无量纲化处理方法主要有极值化、标准化、均值化以及标准化方法,而常使用的是标准化方法。但标准化方法处理后的各指标均值都为0,标准都为1,它只反映了各指标之间的相互影响,在无量纲化的同时也抹杀了各指标之间变异程度上的异,因此,标准化方法并不适用于多指标的综合评价中。而经过均值化方法处理的各指标数据构成的协方矩阵既可以反映原始数据中各指标变异程度上的异,也包含各指标相互影响程度异的信息。四、数据标准化的方法: 1、对变量的离标准化离标准化是将某变量中的观察值减去该变量的小值,然后除以该变量的极。即 x’ik=[xik -Min (xk)]/Rk 经过离标准化后,各种变量的观察值的数值范围都将在〔0,1〕之间,并且经标准化的数据都是没有单位的纯数量。离标准化是消除量纲(单位)影响和变异大小因素的影响的简单的方法。 有一些关系系数(例如指数尺度)在定义时就已经要求对数据进行离标准化,但有些关系系数的计算公式却没有这样要求,当选用这类关系系数前,不妨先对数据进行标准化,看看分析的结果是否为有意义的变化。 2,对变量的标准标准化标准标准化是将某变量中的观察值减去该变量的平均数,然后除以该变量的标准。即 x’ik = (xik - )/sk 经过标准标准化后,各变量将有约一半观察值的数值小于0,另一半观察值的数值大于0,变量的平均数为0,标准为1。经标准化的数据都是没有单位的纯数量。对变量进行的标准标准化可以消除量纲(单位)影响和变量自身变异的影响。但有人认为经过这种标准化后,原来数值较大的的观察值对分类结果的影响仍然占明显的优势,应该进一步消除大小因子的影响。尽管如此,它还是当前用得多的数据标准化方法。 3,先对事例进行标准标准化,再对变量进行标准标准化步,先对事例进行标准标准化,即将某事例中的观察值减去该事例的平均数,然后除以该事例的标准。即 x’ik = (xik - )/si 第二步,再对变量进行标准标准化,即将某变量中的观察值减去该变量的平均数,然后除以该变量的标准。即 x’’ik = (x’ik - ’k)/s’k 使用这种标准化的目的也在于消除性状间的量纲(单位)影响和变异大小因子的影响,使性状间具有可比性。 4,先对变量、后对事例、再对变量的标准标准化这种标准化的目的也在于消除性状间的量纲(单位)影响和变异大小因子的影响,使性状间具有可比性。具体做法是:步,先对变量进行标准标准化,即将某变量中的观察值减去该变量的平均数,然后除以该变量的标准。即 x’ik = (xik - )/sk 第二步,后对事例进行标准标准化,即将某事例中的观察值减去该事例的平均数,然后除以该事例的标准。即 x’’ik = (x’ik - ’i)/s’i 第三步,再对变量进行标准标准化,即将某变量中的观察值减去该变量的平均数,然后除以该变量的标准。即 x’’’ik = (x’’ik - ’’k)/s’’k 进行了前两步之后,还要进行第三步的原因,主要是为了计算的方便。

数据标准化的方法

要从数据的源头进行标准化,如果是产品设计,那么就要将产品中的涉及要素全部标准话,形成清单,并且明确使用、检验的标准,这样的对后期采购,验收等流程都有重要意义,其次,对涉及要素形成统一称谓,使用标准名词,这样在工作当中也会避免很多麻烦。,数据要按照一定的规则(这个就要看你是什么行业,做什么的数据)进行排列管理,在今后的工作方便使用。主要的还是顶楼上说的,一定要准确,真实,否则什么做出来都是两层皮。没有任何管理意义,还会成为工作负担。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至836084111@qq.com 举报,一经查实,本站将立刻删除。

联系我们

工作日:9:30-18:30,节假日休息