请选择 进入手机版 | 继续访问电脑版
楼主: lip1203
52843 46

[学习资料] 原创:因子分析中相关系数矩阵为非正定矩阵的案例(含解决方案)   [推广有奖]

  • 0关注
  • 3粉丝

硕士生

40%

还不是VIP/贵宾

-

威望
0
论坛币
531 个
通用积分
0.1803
学术水平
4 点
热心指数
5 点
信用等级
2 点
经验
1280 点
帖子
115
精华
0
在线时间
155 小时
注册时间
2010-11-17
最后登录
2015-7-22

lip1203 发表于 2011-9-8 11:28:27 |显示全部楼层 |坛友微信交流群
相似文件 换一批

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币

在最近的工作中需要用spss做因子分析,但是在具体操作过程中遇到了头疼的“非正定矩阵的问题”,困扰了很久。看了论坛上很多网友的讨论和解决办法,加上自己的一些摸索,也最终找到了问题的原因和解决办法,现在写出来与大家分享,希望对有同样困扰的朋友一些启示,当然其中一定有不对的地方,欢迎大家一起讨论。


一、案例介绍某运营商无线增值业务全国各省某一个月内运营情况,变量35个,样本31个(全国31个省),希望通过因子分析对各省综合实力进行排序。


二、问题描述通过spss的因子分析对原始变量进行降维处理时,SPSS提示相关系数矩阵为“非正定矩阵”,无法给出KMO值,但是SPSS仍然给出了后续因子分析结果如附件图片:未命名2


三、疑问1)        什么是正定矩阵?2)        因子分析是否一定要求变量的相关系数矩阵为正定矩阵?3)        非正定矩阵的存在对因子分析结果有何影响?4)        如何修正使得变成正定矩阵?


四、解决办法通过在论坛上查阅人相关问题,发现其他网友总结出现这种情况的原因主要集中在两点:

1)        样本量太少,而指标过多

2)        某些变量间相关性太强

而解决方案分别要求增加样本,或者剔除某些显著强相关的变量。但是在我的这个例子里面无法增加样本,因此只能从变量的相关性上考虑,看是不是存在一些和其他变量高度相关的变量。通过查看因子分析结果中的相关系数矩阵,的确发现大部分变量之间都存在高度相关性,而且相关系数在0.9以上,如附件图片:未命名3


但是现在问题来了,那是不是应该直接删除高度相关的变量?该删除哪些变量?按照我的情况估计很多变量都要剔除了,那对于分析结果就会产生很大的影响。为了找出具体是哪些变量导致问题的出现,我用了一个比较笨的办法:逐一淘汰法。刚开始时不把所有变量都用来做因子分析,只选取一小部分,例如我先选取了10个变量做分析,发现spss没有再提示“非正定矩阵”而是正常的输出了KMO检验值,而且顺利完成了因子分析结果;然后下一步我再逐个添加其他变量进行测试,当发现添加某个变量spss提示“非正定矩阵”时,就记下这个变量,然后再换成下一个变量继续测试,直到把所有变量测试完。通过这样的测试,我终于找到让spss认为“非正定矩阵”的原因:一共有5个变量,只要不纳入这5个变量进行分析,spss就能正常的进行因子分析。找到原因后,我本来想直接删除掉这5个变量好了,但是我查看了一下spss因子分析的输出结果,发现了为什么是这5个变量的原因,如下图:  (附件图片:未命名)



上图的截图是“解释的总方差”显示所有变量的相关系数矩阵的所有特征值,大家可以看到在用红色方框标注的5个特征值,他们的数值的数量级都是10的负16次方、17次方、18次方,甚至出现了负值,几乎可以认为就是零了,远远小于其他特征值,根据之前的逐一测试法确认,这5个特征值是与之前发现的那5个变量是对应的,我想这就应该是为什么是这5个变量导致出现非正定矩阵的原因吧。那进一步思考,特征值过小或者为负值说明了什么呢,根据正定矩阵的判定,正定矩阵的充分必要条件是:特征值>0,所有出现负的特征值就肯定会出现“非正定矩阵”的原因,但就靠这点似乎还不够,因为有些特征值是大于0的,只是非常非常小而已。我推测(仅仅是我推测),因为我们在做主成分分析的时候,每个主成分的方差就等于对于特征值,特征值太小意味着主成分的方差太小,方差太小意味着包含变量的信息量太少,而我们在做因子分析时往往也是用主成分法来抽取公因子,所以特征值太小可能也无法满足正定矩阵的条件,当然这是我的推测。五、总结根据整个过程,我总结了一下几点:1)        出现非正定矩阵的情况,并不一定都是样本太少(本例中样本才31,变量有35个)2)        剔除变量的时候,可以利用逐一淘汰法来发现问题变量,再考虑是否要删除3)        非正定矩阵似乎对因子分析结果并无太多影响,因为我们往往只抽取了部分公因子(累计方差贡献率>85%),特征值过小意味着方差贡献率也会很小,往往不会被选作公因子,所以对结果影响不大,这也是为什么spss仅仅是提示,仍然会输出因子分析结果的原因。 好了,这个是我工作中碰到的一个实际例子,之前一直困扰了我很久,现在写出来与大家分享,希望能对有同样问题的朋友一个启发,当然里面一定有不对的地方,希望大家多多指正。

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:相关系数矩阵 非正定矩阵 正定矩阵 因子分析 相关系数 分析 解决方案 正定 原创 皮尔逊相关系数 偏相关系数 pearson相关系数 相关系数检验 spearman相关系数 复相关系数 相关系数矩阵

未命名.jpg
未命名3.JPG
未命名2.JPG

因子分析出现非正定矩阵案例.doc

190.5 KB

需要: 1 个论坛币  [购买]

已有 4 人评分经验 论坛币 学术水平 热心指数 信用等级 收起 理由
寒佳瞳 + 5 + 2 解决了我的问题
林夕孟 + 1 + 1 观点有启发
xiaowenzi22 + 20 观点有启发
耕耘使者 + 2 + 1 + 1 鼓励原创

总评分: 经验 + 20  论坛币 + 5  学术水平 + 3  热心指数 + 4  信用等级 + 1   查看全部评分

本帖被以下文库推荐

chenyihui 在职认证  发表于 2011-9-8 12:38:06 |显示全部楼层 |坛友微信交流群
竟然要钱。。。
[img=569,461]http://fmn.rrimg.com/fmn047/20110915/1055/p_large_cfIe_7d5c0001375e

使用道具

llllmnmn 发表于 2011-9-8 13:47:05 |显示全部楼层 |坛友微信交流群
lz缺钱!可以理解。

使用道具

lip1203 发表于 2011-9-8 13:56:44 |显示全部楼层 |坛友微信交流群
呵呵,是啊,缺钱的紧啊,好歹看在我打了半天字的面上,捧个场呗,再说也才1个论坛币,真不贵

使用道具

lip1203 发表于 2011-9-9 10:02:45 |显示全部楼层 |坛友微信交流群
好吧,我错了,不该想着挣点论坛币,现在直接贴出来,第一次发帖只为赚点人气,希望大家捧捧场,重要的是多提点意见

使用道具

flybei 发表于 2011-9-15 10:56:02 |显示全部楼层 |坛友微信交流群
谢谢了,试试楼主的方法

使用道具

dengkai_nj 发表于 2011-10-11 01:58:30 |显示全部楼层 |坛友微信交流群
很感谢 楼主看了后受启发

使用道具

yiyiustb 发表于 2011-11-3 14:57:47 |显示全部楼层 |坛友微信交流群
感谢楼主的无私奉献啦

使用道具

泡芙1986 发表于 2011-11-14 10:49:18 |显示全部楼层 |坛友微信交流群
我也觉得是正定矩阵或者非正定矩阵似乎对因子分析没多大关系的。都是能计算出主因子的

使用道具

zph218 发表于 2011-11-28 11:17:38 |显示全部楼层 |坛友微信交流群
谢谢楼主分享学习经验。

使用道具

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-3-29 09:42