全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
5608 5
2012-02-23
proc sql;
select * from table where。。;
quit;

上面select出来的东西是个矩阵,如何赋予sas中的变量
我想进行运算
二维码

扫码加我 拉你入群

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

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

全部回复
2012-2-23 10:05:22
用data step很容易实现的
data _null_;
set table;
call symput('var1'||_N_, 'var1');
call symput('var2'||_N_, 'var2');
...;
call symput('var3'||_N_, 'var3');
run;
二维码

扫码加我 拉你入群

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

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

2012-2-23 10:13:51
数据来源是数据库啊。所以用proc sql取数啊
我这里不是学校,是企业,呵呵,大量的数据。比如高频数据,5s就取一次股票数据,股票数量有2000个左右。
本来用matlab的,现在改用sas,觉得sas远远不如matlab啊。可能我不熟悉吧
二维码

扫码加我 拉你入群

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

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

2012-2-23 10:15:27
而且你那种办法很傻,因为事先根本不知道table里面有多少列式符合条件的。所以要用
select * from table where。。order by 语句筛选
选出来的矩阵读入某个内存变量,这样都没法实现吗?
二维码

扫码加我 拉你入群

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

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

2012-2-23 18:33:25
我错了,我以为你对SAS熟悉,但是数据库也可以用data step,你用libname 连接到数据库就可以了,而且在SAS中用data step比较多,如果要用sql语句的话,就可以不用SAS了
二维码

扫码加我 拉你入群

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

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

2012-2-23 18:50:27
例子:
libname src  <database engine> "your database" <database options>;

proc sql;
create table as demo
select * from table where。。;
quit;

data arraydst;
set demo;
array a(*) _character_;
array b(*) _numeric_;
do i = 1 to dim(a);
  ...
end;
do i = 1 to dim(b);
  ...
end;
run;

顺便说一句,我也是在企业的。



二维码

扫码加我 拉你入群

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

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

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

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