全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
7728 13
2016-01-14
在进行主成分分析的时候,proc princomp data=w 这个数据集该用原始数据,标准化后的数据?
另外在求主成分得分的时候,也就是求综合得分过程中的一部分,该带入原始数据还是标准化数据,还是应该对应带入。鄙人几种情况都试过,结果都不一样!求赐教!!!感激不尽
二维码

扫码加我 拉你入群

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

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

全部回复
2016-1-17 16:57:05
主成分经常会采用将变量标准化的方法,
因为在实际问题中,不同的变量往往有不同的量纲,而主成分的求解过程中总是优先考虑方差大的变量,量纲不一样影响可大可小,所以标准化之后效果会更好点。
二维码

扫码加我 拉你入群

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

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

2016-1-20 23:08:47
letsgoaway 发表于 2016-1-17 16:57
主成分经常会采用将变量标准化的方法,
因为在实际问题中,不同的变量往往有不同的量纲,而主成分的求解过 ...
主成分分析时,sas是不是会将数据自动标准化,求主成分得分?
二维码

扫码加我 拉你入群

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

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

2016-1-21 15:54:04
princomp过程后面有个参数可以选的,自己可以决定要不要标准化
二维码

扫码加我 拉你入群

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

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

2016-1-21 20:11:54
letsgoaway 发表于 2016-1-21 15:54
princomp过程后面有个参数可以选的,自己可以决定要不要标准化
请问具体的选项语句?拜托~
二维码

扫码加我 拉你入群

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

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

2016-1-21 21:28:34
心晴923 发表于 2016-1-21 20:11
请问具体的选项语句?拜托~
我试了一下,SAS的princomp过程会自己标准化的,你开始说的是对的。那个参数是对已生成的主成分进行标准化的。比如下面这个代码:参数std有与没有对主成分的构成没有影响,最后的公式都是一样的,不同的是有std参数的话,会对构成的主成分进行标准化一下。
proc princomp data=ex20_1 std out=data1;
run;

你找个数据试一下就可以了,
1、准备两份数据,一份没有标准化,一份标准化了,用proc princomp data=data;run结果是一样的,这就说明SAS做主成分会先标准化再做;
2、对同一份数据跑
proc princomp data=ex20_1 out=data1;run;
再加个参数std,再跑一次proc princomp data=ex20_1 std out=data2;run;
结果系数是一样的,但data2的主成份是经过标准化后的。

二维码

扫码加我 拉你入群

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

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

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群