全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
2727 6
2012-09-04
如题,
proc iml;
use data2007; read all var _num_ into matrix_2007 ;

/* do x=1 to ncol(matrix_2007) ;*/

do x= ncol(matrix_2007)  to 1;

    do y=1 to nrow(matrix_2007);
    flag=0;
       do j=y to nrow(matrix_2007);
            if matrix_2007[j,x]^=0 then flag=flag+1;
    end;
  if flag=0 then matrix_2007[y,x]=.;
    end;
  end;

quit;


只能从小到大写/* do x=1 to ncol(matrix_2007) ;*/,程序能够正确运行,
如果从大到小写,
do x= ncol(matrix_2007)  to 1;
程序也不报错,但就是运行不出结果啊

二维码

扫码加我 拉你入群

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

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

全部回复
2012-9-4 11:37:38
matlab是可以的~
二维码

扫码加我 拉你入群

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

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

2012-9-4 11:41:14
有一个地方,不知道说的对不

flag初始值为0,“if flag=0 then matrix_2007[y,x]=;”这个地方的flag是不是应该大于0?
二维码

扫码加我 拉你入群

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

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

2012-9-4 11:44:35
do x= ncol(matrix_2007)  to 1 by -1;
二维码

扫码加我 拉你入群

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

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

2012-9-4 15:18:27
suoyuanyuan 发表于 2012-9-4 11:37
matlab是可以的~
谢谢,matlab C等都是可以的,SAS不行,ziyenano那种方法可以的
二维码

扫码加我 拉你入群

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

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

2012-9-4 15:19:32
wyq1987 发表于 2012-9-4 11:41
有一个地方,不知道说的对不

flag初始值为0,“if flag=0 then matrix_2007[y,x]=;”这个地方的flag是不 ...
呵呵,程序是想找到从该值所处的列,向下都是0的那个数
二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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