数学建模常用模型 :相关性分析
数学建模常用模型13 :相关性分析相关分析研究的是两个变量的相关性,但你研究的两个变量必须是有关联的,如果你把历年人口总量和你历年的身高做相关性分析,分析结果会呈现显著地相关,但它没有实际的意义,因为人口总量和你的身高都是逐步增加的,从数据上来说是有一致性,但他们没有现实意义。相关性分析和聚类分析一样,比较简单,数学建模中经常用,但是每次都只用一小步,或者只是对数据进行一下分析,根据分析的结果确定使用的方法,所以这些方法不要掌握的特别深,能会用SPSS实现就行。相关性分析可以是简单的理解为各个变量之间的相关程度。一般这样认为:0.8-1.0 极强相关0.6-0.8 强相关0.4-0.6 中等程度相关0.2-0.4 弱相关0.0-0.2 极弱相关或无相关 Sperman或kendall等级相关分析Person相关(样本点的个数比较多)//一般常用皮尔逊相关Copula相关(比较难,金融数学,概率密度)典型相关分析(因变量组Y1234,自变量组X1234,各自变量组相关性比较强,问哪一个因变量与哪一个自变量关系比较紧密?) 下面是一个典型相关性分析的MATLAB的程序,想看的可以看一下例 满意度典型相关分析某调查公司从一个大型零售公司随机调查了 784 人,测量了 5 个职业特性指标和 7个职业满意变量,有关的变量见表 1讨论两组指标之间是否相联系。表1 指标变量表X组X1—用户反馈,X2—任务重要性,X3—任务多样性,X4—任务特殊性X5—自主性
Y组Y1—主管满意度,Y2—事业前景满意度,Y3—财政满意度,Y4—工作强度满意度,Y5—公司地位满意度, Y6—工作满意度,Y7—总体满意度
相关系数矩阵数据见表 2表2 相关系数矩阵数据
X1X2X3X4X5Y1Y2Y3Y4Y5Y6Y7
X11.000.490.530.490.510.330.320.200.190.300.370.21
X20.491.000.570.460.530.300.210.160.080.270.350.20
X30.530.571.000.480.570.310.230.140.070.240.370.18
X40.490.460.481.000.570.240.220.120.190.210.290.16
X50.510.530.570.571.000.380.320.170.230.320.360.27
Y10.330.300.310.240.381.000.430.270.240.340.370.40
Y20.320.210.230.220.320.431.000.330.260.540.320.58
Y30.200.160.140.120.170.270.331.000.250.460.290.45
Y40.190.080.070.190.230.240.260.251.000.280.300.27
Y50.300.270.240.210.320.340.540.460.281.000.350.59
Y60.370.350.370.290.360.370.320.290.300.351.000.31
Y70.210.200.180.160.270.400.580.450.270.590.311.00
一些计算结果的数据见下面的表格。表3 的典型变量
u1u2u3u4u5
X10.421704-0.342850.857665-0.788410.030843
X20.1951060.668299-0.44343-0.269130.983229
X30.1676130.8531560.2592130.468757-0.91414
X4-0.02289-0.356070.4231061.0423240.524367
X50.459656-0.72872-0.97991-0.16817-0.43924
表 4原始变量与本组典型变量之间的相关系数
u1u2u3u4u5
X10.829349-0.109340.48534-0.246870.061056
X20.7303680.436584-0.200140.0020840.485692
X30.7533430.4660880.1055680.301958-0.33603
X40.615952-0.222510.2052630.6613530.302609
X50.860623-0.26604-0.388590.148424-0.12457
V1V2V3V4V5
Y10.7564110.0446070.3394740.129367-0.33702
Y20.6438840.358163-0.171720.352983-0.33353
Y30.3872420.037277-0.176730.534770.414847
Y40.3771620.791935-0.00536-0.288650.334077
Y50.6532340.1083910.2091820.4376480.434613
Y60.803986-0.2416-0.23477-0.405220.196419
Y70.5024220.1628480.49330.1889580.067761
表 5原始变量与对应组典型变量之间的相关系数
V1V2V3V4V5
X10.4592160.025848-0.057850.0178310.003497
X20.404409-0.103210.023854-0.000150.027816
X30.417131-0.11019-0.01258-0.02181-0.01924
X40.3410560.052602-0.02446-0.047770.01733
X50.4765320.0628930.046315-0.01072-0.00713
u1u2u3u4u5
Y10.41883-0.01055-0.04046-0.00934-0.0193
Y20.356523-0.084670.020466-0.0255-0.0191
Y30.214418-0.008810.021064-0.038630.023758
Y40.208837-0.187220.0006390.0208490.019133
Y50.3617-0.02562-0.02493-0.031610.02489
Y60.4451720.0571160.0279810.0292680.011249
Y70.278194-0.0385-0.05879-0.013650.003881
表6 典型相关系数
12345
0.55370.23640.11920.07220.0573
MATLAB源代码:clc,clearload r.txt %原始的相关系数矩阵保存在纯文本文件r.txt中n1=5;n2=7;num=min(n1,n2);s1=r(1:n1,1:n1); %提出X与X的相关系数s12=r(1:n1,n1+1:end); %提出X与Y的相关系数s21=s12'; %提出Y与X的相关系数s2=r(n1+1:end,n1+1:end); %提出Y与Y的相关系数m1=inv(s1)*s12*inv(s2)*s21; %计算矩阵M1m2=inv(s2)*s21*inv(s1)*s12; %计算矩阵M2=eig(m1); %求M1的特征向量和特征值for i=1:n1 vec1(:,i)=vec1(:,i)/sqrt(vec1(:,i)'*s1*vec1(:,i)); %特征向量归一化,满足a's1a=1 vec1(:,i)=vec1(:,i)/sign(sum(vec1(:,i))); %特征向量乘以1或-1,保证所有分量和为正endval1=sqrt(diag(val1)); %计算特征值的平方根=sort(val1,'descend'); %按照从大到小排列a=vec1(:,ind1(1:num)) %取出X组的系数阵dcoef1=val1(1:num) %提出典型相关系数=eig(m2);for i=1:n2 vec2(:,i)=vec2(:,i)/sqrt(vec2(:,i)'*s2*vec2(:,i)); %特征向量归一化,满足b's2b=1 vec2(:,i)=vec2(:,i)/sign(sum(vec2(:,i))); %特征向量乘以1或-1,保证所有分量和为正endval2=sqrt(diag(val2)); %计算特征值的平方根=sort(val2,'descend'); %按照从大到小排列b=vec2(:,ind2(1:num)) %取出Y组的系数阵dcoef2=val2(1:num) %提出典型相关系数x_u_r=s1*a %x,u的相关系数y_v_r=s2*b %y,v的相关系数x_v_r=s12*b %x,v的相关系数y_u_r=s21*a %y,u的相关系数mu=sum(x_u_r.^2)/n1 %x组原始变量被u_i解释的方差比例mv=sum(x_v_r.^2)/n1 %x组原始变量被v_i解释的方差比例nu=sum(y_u_r.^2)/n2 %y组原始变量被u_i解释的方差比例nv=sum(y_v_r.^2)/n2 %y组原始变量被v_i解释的方差比例fprintf('X组的原始变量被u1~u%d解释的比例为%f\n',num,sum(mu));fprintf('Y组的原始变量被v1~v%d解释的比例为%f\n',num,sum(nv)); 可以看出,所有五个表示职业特性的变量与有大致相同的相关系数,视为形容职业特性的指标。第一对典型变量的第二个成员V1与Y1,Y2,Y5,Y6有较大的相关系数,说明V1主要代表了主管满意度,事业前景满意度,公司地位满意度和工种满意度。而U1和V1之间的相关系数0.5537。u1和v1解释的本组原始变量的比率: ,X组的原始变量被到解释了100%, Y 组的原始变量被到解释了80.3%。
谢谢分享 0
页:
[1]