楼主: qiaoluo
2968 2

求解sas中的iml模块问题 [推广有奖]

  • 0关注
  • 0粉丝

初中生

85%

还不是VIP/贵宾

-

威望
0
论坛币
19 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
344 点
帖子
23
精华
0
在线时间
13 小时
注册时间
2008-9-19
最后登录
2012-11-17

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
题目是SAS/IML编写一个程序,计算岭参数k01.000(每次变化量为0.001)时岭估计,一直运行不出来
代码proc iml;
start estimate(x,y,z);
   b=(inv(x`*x+z))*x`*y;
   return(b);
finish;
I={1,1,1,1,1,1,1,1,1,1,1};

X={1 149.3 4.2 108.1,
   1 161.2 4.1 114.8,
   1 171.5 3.1 123.2,
   1 175.5 3.1 126.9,
   1 180.8 1.1 132.1,
   1 190.7 2.2 137.7,
   1 202.1 2.1 146.0,
   1 212.4 5.6 154.1,
   1 226.1 5.0 162.3,
   1 231.9 5.1 164.3,
   1 239.0 0.7 167.6};
Y={15.9,16.4,19,19.1,18.8,20.4,22.7,26.5,28.1,27.6,26.3};
do k=0 to 1.000 by 0.001;
Z=k*I;


beta(k)=estimate(X,Y,Z);
end;
print beta(k);
run;
quit;
二维码

扫码加我 拉你入群

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

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

关键词:estimate RETURN finish print Start SAS iml

回帖推荐

bobguy 发表于2楼  查看完整内容

A quick fix and let you you figure it the rest. proc iml; start estimate(x,y,z); b=(inv(x`*x+z))*x`*y; return(b); finish; I={1,1,1,1,1,1,1,1,1,1,1}; X={1 149.3 4.2 108.1, 1 161.2 4.1 114.8, 1 171.5 3.1 123.2, 1 175.5 3.1 126.9, 1 180.8 1.1 132.1, 1 190.7 2.2 137.7, 1 202.1 2.1 146.0, 1 212.4 5.6 154.1, 1 226.1 5.0 162.3, 1 231.9 5.1 164.3, ...

本帖被以下文库推荐

沙发
bobguy 发表于 2010-4-1 10:29:10 |只看作者 |坛友微信交流群
qiaoluo 发表于 2010-4-1 09:25
题目是SAS/IML编写一个程序,计算岭参数k01.000(每次变化量为0.001)时岭估计,一直运行不出来
代码proc iml;
start estimate(x,y,z);
   b=(inv(x`*x+z))*x`*y;
   return(b);
finish;
I={1,1,1,1,1,1,1,1,1,1,1};

X={1 149.3 4.2 108.1,
   1 161.2 4.1 114.8,
   1 171.5 3.1 123.2,
   1 175.5 3.1 126.9,
   1 180.8 1.1 132.1,
   1 190.7 2.2 137.7,
   1 202.1 2.1 146.0,
   1 212.4 5.6 154.1,
   1 226.1 5.0 162.3,
   1 231.9 5.1 164.3,
   1 239.0 0.7 167.6};
Y={15.9,16.4,19,19.1,18.8,20.4,22.7,26.5,28.1,27.6,26.3};
do k=0 to 1.000 by 0.001;
Z=k*I;


beta(k)=estimate(X,Y,Z);
end;
print beta(k);
run;
quit;
A quick fix and let you you figure it the rest.

proc iml;
start estimate(x,y,z);
   b=(inv(x`*x+z))*x`*y;
   return(b);
finish;
I={1,1,1,1,1,1,1,1,1,1,1};
X={1 149.3 4.2 108.1,
   1 161.2 4.1 114.8,
   1 171.5 3.1 123.2,
   1 175.5 3.1 126.9,
   1 180.8 1.1 132.1,
   1 190.7 2.2 137.7,
   1 202.1 2.1 146.0,
   1 212.4 5.6 154.1,
   1 226.1 5.0 162.3,
   1 231.9 5.1 164.3,
   1 239.0 0.7 167.6};
Y={15.9,16.4,19,19.1,18.8,20.4,22.7,26.5,28.1,27.6,26.3};
do k=0 to 1.000 by 0.01;
Z=k*I(4);
beta=estimate(X,Y,Z);
print k beta;
end;

run;
quit;
已有 2 人评分经验 论坛币 学术水平 热心指数 收起 理由
bakoll + 3 + 3 精彩帖子
醉_清风 + 1 + 1 学习了

总评分: 经验 + 3  论坛币 + 3  学术水平 + 1  热心指数 + 1   查看全部评分

使用道具

藤椅
qiaoluo 发表于 2010-4-14 18:33:21 |只看作者 |坛友微信交流群
谢谢,后来解决了

使用道具

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

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

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

GMT+8, 2024-5-5 20:29