当前位置:首页 > Matlab与统计分析
sddata= x./stdr(ones(n,1),:); %标准化变换
[p,princ,egenvalue]=princomp(sddata) %调用主成分分析程序 p3=p(:,1:3) %输出前三个主成分系数 sc=princ(:,1:3) %输出前三个主成分得分 egenvalue %输出特征根
per=100*egenvalue/sum(egenvalue) % 输出各个主成分贡献率
执行后得到所要结果,这里是前三个主成分、主成分得分、特征根。即
egenvalue=[3.8811,2.6407,1.0597]' , per=[43.12,29.34,11.971]' .
这样,前三个主成分为
Zl = -0.3677xl+ 0.3702x2+ 0.1364x3+ 0.4048x4+ 0.3355x5-0.1318x6+0.4236x7+ 0.4815x8-0.0643x9 Z2 = 0.1442xl+ 0.2313x2-0.5299x3+ 0.1812x4-0.1601x5+ 0.5273x6+0.3116x7-0.0267x8+ 0.4589x9 Z3 = -0.3282xl-0.3535x2+ 0.0498x3+ 0.0582x4+ 0.5664x5-0.0270x6-0.0958x7-0.2804x8+ 0.5933x9
第一主成分贡献率为43.12%,第二主成分贡献率为29.34%,第三主成分贡献率为11.97%,前三个主成分累计贡献率达84.24%。
如果按80% 以上的信息量选取新因子,则可以选取前三个新因子。第一新因子Z1包含的 信息量最大为43.12%%,它的主要代表变量为x8(城市文明)、x7(生产效率)、 x4(城市绿 化),其权重系数分别为0.4815、0.4236、0.4048,反映了这三个变量与生态环境水平密切相关,第二新因子Z2包含的信息量次之为29.34%,它的主要代表变量为x3(地理结构)、x6(资源配置)、 x9(可持续性),其权重系数分别为0.5299、0.5273、0.4589,第三新因子 Z3包含的信息量为11.97%,代表总量为 x9(可持续性)、 x5(物质还原),权重系数分别为0.5933、0.5664。
这些代表变量反映了各自对该新因子作用的大小,它们是生态环境系统中最重要的影响因
素。根据前三个主成分得分,用其贡献率加权,即得十个城市各自的总得分 F = 43.12%princ(:,1)+29.34%princ(:,2)+11.97%princ(:,3) =[0.0970,-0.6069,-1.5170,1.1801,0.0640,-0.8178,-0.9562,1.1383,0.1107,1.3077]'
根据总得分排序,结果见表1。
三、 聚类分析
我们对苏州所辖张家港市2003年七条河流中主要污染因子(指标),即CODmn,BOD5,非 离子氨,氨氮,挥发酚,石油类共6个变量(资料见表2,来源于张家港市2003年环境质量报 告书),进行聚类分析。
我们利用Matlab6.5中的cluster命令实现。具体程序如下
x= [3.14 8.41 23.78 25.79 4.17 6.47 5.47 9.57 26.48 23.79 6.42 6.58 3.1 4.31 21.2 22.48 5.34 6.54 5.67 9.54 10.23 20.87 4.2 6.8 6.81 9.05 16.18 24.56 5.2 5.45 6.21 7.08 21.05 31.56 6.15 8.21
4.87 8.97 26.54 34.56 5.58 8.07];
[n,m]=size(x); stdr=sta(x);
xx=x ./stdr(ones(n,1),:); %标准化变换
y=pdist(xx); %计算各样本间距离(这里为欧氏距离) z=linkage(y); %进行聚类(这里为最短距离法) h=dendrogram(z); % 画聚类谱系图 t=cluster(z,3) %将全部样本分为3类 find(t==2); %找出属于第2类的样品编号
执行后得到所要结果,聚类谱系图见图1.
t=[3,1,3,1,1,2,2]' 即全部样本分为3类,结果见表2.
从图1可以看出:七条河流中,二干河、横套河、四千河属于一类,污染较重,主要是CODmn、BOD5超标多;华妙河、盐铁塘属于一类,污染一般,主要是氨氮、石油类超标;张家港河、东横河属于一类,污染较轻。总的来说,各河流都存在不同程度的污染,因此全市应对各河流严格监督管理,着力实施水污染防治工作,太湖流域水污染源应限期治理达标排放,巩固水污染防治工作成果,加大投入,新建或改、扩建废水治理工程,确保达标排放。
共分享92篇相关文档