SAS中文论坛

 找回密码
 立即注册

扫一扫,访问微社区

查看: 790|回复: 6
打印 上一主题 下一主题

请教高手一个IML的问题

[复制链接]

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
楼主
 楼主| 发表于 2009-5-26 16:30:15 | 只看该作者

请教高手一个IML的问题

我现在用IML的I函数产生了一个单位矩阵:
proc iml;
i3=i(3);
print i3;
quit;
结果如下:

1 0 0
0 1 0
0 0 1

我现在想把这个结果导成SAS数据集,如下格式:

x y z
1 0 0
0 1 0
0 0 1

怎么实现?多谢高手指点!
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
沙发
 楼主| 发表于 2009-5-26 20:40:13 | 只看该作者

Re: 请教高手一个IML的问题

[code:j31eg3ux]proc iml;
        i3=i(3);
        print i3;
        create result from i3;
        append from i3;
quit;
[/code:j31eg3ux]

by the way,可以直接存储矩阵!
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
板凳
 楼主| 发表于 2009-5-27 09:55:46 | 只看该作者

Re: 请教高手一个IML的问题

多谢指点,非常感谢!能否接着问一下:
如果数据集result已经有了,如下:
x y z
1 0 0
0 1 0
0 0 1
;
我现在想把这个SAS数据集转换成对应矩阵的三个列向量X1;Y1;Z1.
即:X1=(1,0,0);Y1=(0,1,0);Z1=(0,0,1).请问怎么实现?
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
地板
 楼主| 发表于 2009-5-27 10:50:21 | 只看该作者

Re: 请教高手一个IML的问题

proc iml;
use result;
read all into x;
x1=x[1:3,1];
x2=x[1:3,2];
x3=x[1:3,3];
print x1 x2 x3;
quit;
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
5#
 楼主| 发表于 2009-5-27 12:54:15 | 只看该作者

Re: 请教高手一个IML的问题

非常感谢,算是解决了SAS数据集和矩阵之间的数据转换。
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
6#
 楼主| 发表于 2009-5-27 13:46:36 | 只看该作者

Re: 请教高手一个IML的问题

非常佩服!受教了!什么是IML?
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
7#
 楼主| 发表于 2009-5-27 14:11:19 | 只看该作者

Re: 请教高手一个IML的问题

徐大人还不知道SAS有这个模块啊。专门用来做矩阵分析的,很好很强大。不过很多数据处理的功能其实base sas也可以搞定。只是如果你有时候必须要和矩阵打交道的时候,那只好用iml或者类似的如matlab之类的工具了。
回复 支持 反对

使用道具 举报

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

本版积分规则

QQ|小黑屋|手机版|Archiver|SAS中文论坛  

GMT+8, 2026-2-5 15:53 , Processed in 0.086734 second(s), 20 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表