SAS中文论坛

 找回密码
 立即注册

扫一扫,访问微社区

查看: 605|回复: 0
打印 上一主题 下一主题

跟crackman读SAS程序(94)--动态处理需要设置条件的数据列项

[复制链接]

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
楼主
 楼主| 发表于 2010-11-10 11:57:41 | 只看该作者

跟crackman读SAS程序(94)--动态处理需要设置条件的数据列项

From crackman's blog on Baidu


               
                <p><font size="4">有一系列类似q0001_01,q0001_02.....q0001_10 的变量,如何根据一个变量q003的值来确定前面要处理的变量呢?<br>
比如 q003=2 我只要处理q0001_01和q0001_02,q003=3  处理q0001_01 q0001_02 q0001_03。</font></p>
<p><font size="4">如 q0001_01 和 q0001_02 都取 1 和 2 生成一个变量a=1 q0001_01 和 q0001_02 都取 3  a=2  <br>
</font></p>
<p><font size="4">data crackman;<br>
input q0001_01 q0001_02 q0001_03 q0001_04 q003;<br>
array p q0001_01-q0001_04 q003;<br>
&nbsp;&nbsp;&nbsp;  if q003=1 then do;<br>
&nbsp;&nbsp;&nbsp;  if p(1)=1 or p(1)=2 then a=1;<br>
&nbsp;&nbsp;&nbsp;  else if p(1)=3 then a=2;<br>
else a=3;<br>
end;<br>
&nbsp;&nbsp;&nbsp;  else do j=1 to q003-1;<br>
&nbsp;&nbsp;&nbsp;&nbsp;  k=j+1;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  if p(j)=p(k)=1 or p(j)=p(j)=2 then do ;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  a=1;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  k+1;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  end;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  else if  p(j)=p(k)=3 then do ;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  a=2;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  k+1;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  end;<br>
&nbsp;&nbsp;&nbsp;  else if p(j) ne p(k) then do;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  a=3;<br>
&nbsp;&nbsp;&nbsp;  end;<br>
  end;<br>
  drop k j;<br>
datalines;<br>
1 1 1 1 1<br>
1 1 2 1 3<br>
3 3 1 2 2<br>
2 2 2 2 4<br>
1 1 1 1 4<br>
;<br>
run;<br>
proc print data=crackman;<br>
run;</font></p>
<p> </p> <a href="http://hi.baidu.com/crack%5Fman/blog/item/117cdd3b48319fd27c1e71ca.html">阅读全文</a>
               
                <br/><b>类别:</b><a href="http://hi.baidu.com/crack%5Fman/blog/category/%B8%FAcrackman%B6%C1sas%B3%CC%D0%F2">跟crackman读sas程序</a>&nbsp;<a href="http://hi.baidu.com/crack%5Fman/blog/item/117cdd3b48319fd27c1e71ca.html#comment">查看评论</a>
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-2-3 20:05 , Processed in 0.456815 second(s), 20 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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