楼主: 道心种魔
1649 4

求大家帮忙解决一个关于矩阵的题 [推广有奖]

  • 0关注
  • 1粉丝

大专生

75%

还不是VIP/贵宾

-

威望
0
论坛币
2341 个
通用积分
0.8500
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
5008 点
帖子
23
精华
0
在线时间
74 小时
注册时间
2007-1-2
最后登录
2025-4-3

楼主
道心种魔 发表于 2011-11-3 11:58:05 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
要处理一个数据,是关于大约20年前美国最大的10个企业的。内容如下:

Company                   x1                  x2                  x3

General Motors          126,974        4,224            173,297

Ford                           96,933          3,835            160,893

Exxon                         86,656          3,510            83,219

IBM                           63,438          3,758             77,734

General Electric          55,264           3,939            128,344

Mobil                         50,976           1,809            39,080

Philip Morris               39,069           2,946            38,528

Chrysler                      36,156           359               51,038

Du Pont                      35,209           2,480            34,715

Texaco                       32,416           2,413             25,636

x1为销售额,x2为利润,x3为资产,单位为(百万美元)。

现在要求在SAS中求相关矩阵,但不能用proc corr,只能用矩阵运算,也就是proc iml来求。

简单的proc corr现在不让用,proc iml 我不太会用,希望大家哪位懂的能帮帮我。


二维码

扫码加我 拉你入群

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

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

关键词:求大家帮忙 Electric Chrysler General company 美国 General 最大的

沙发
龙战于野 发表于 2011-11-3 13:00:17
为什么不能用proc corr呢  proc iml你可以google一下

藤椅
playmore 发表于 2011-11-3 13:25:05
如果你只要作这一个表的
写一个iml的算法真是得不偿失
不能用proc corr的话,用Excel也能算出来
或者用matlab这样的矩阵语言也还简单
playmore邀请您访问ChinaTeX论坛!!!进入ChinaTeX论坛

板凳
yugao1986 发表于 2011-11-3 14:50:08
data test;
   infile cards;
   input company $ 16  x1 x2 x3;
   cards;
General Motors               126974        4224            173297
Ford                          96933        3835            160893
Exxon                         86656        3510            83219
IBM                           63438        3758             77734
General Electric              55264        3939            128344
Mobil                         50976        1809            39080
Philip Morris                 39069        2946            38528
Chrysler                      36156        359             51038
Du Pont                       35209        2480            34715
Texaco                        32416        2413             25636
;
run;
ods trace output;
PROC IML;
   use test;
   read all var _num_ into x;
   nm={x1 x2 x3};
/* Module to compute correlations */
start corr;
   n = nrow(x); /* number of observations */
   sum = x[+,] ; /* compute column sums */
   xpx = t(x)*x-t(sum)*sum/n; /* compute sscp matrix */
   s = diag(1/sqrt(vecdiag(xpx))); /* scaling matrix */
   corr = s*xpx*s; /* correlation matrix */
   print "Correlation Matrix",,corr[rowname=nm colname=nm] ;
finish corr;
/* Sample run */
run corr;
quit;
三人行必有我师

报纸
道心种魔 发表于 2011-11-3 21:35:21
真的非常感谢大家的热心帮助。没想到这题用proc iml这么麻烦,还是proc corr方便啊,不过要求如此,咱屁民只能乖乖听话。

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

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2026-1-2 09:47