SAS中文论坛

标题: 跟crackman读SAS程序(78)--DATA STEP均值填补缺失值 [打印本页]

作者: shiyiming    时间: 2010-10-22 21:43
标题: 跟crackman读SAS程序(78)--DATA STEP均值填补缺失值
From crackman's blog on Baidu


               
                <p>data crackman;<br>
input x y@;<br>
datalines;<br>
1 2<br>
3 4<br>
5 6<br>
. 9<br>
6 7<br>
7 .<br>
1 8<br>
6 3<br>
;<br>
run;<br>
data crackman;</p>
<p>/*当读入第一个观测时,识别_N_=1,开始执行循环,这个循环知道最后一个观测结束才开始执行后面的SET语句,执行结束之后,OBS LASTOBS其实还是保留在PDV里面的,可以被调用的,有些时候我们可以认为SET语句类似其他语言的定义变量一样,因为SET标识符,在编译过程中就建立PDV,等于在内存上申请了一块地盘,你可以用IF 1 或者 IF 0来是否执行SET语句*/<br>
if _n_=1 then do until(lastobs);<br>
set crackman nobs=obs end=lastobs;<br>
sum_x+x;<br>
sum_y+y;<br>
end;<br>
set crackman;<br>
if x=. then x=ceil(sum_x/obs);<br>
if y=. then y=ceil(sum_y/obs);<br>
run;<br>
proc print;<br>
run;</p>
<p> </p> <a href="http://hi.baidu.com/crack%5Fman/blog/item/cb0038a9e5e109064a36d672.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/cb0038a9e5e109064a36d672.html#comment">查看评论</a>




欢迎光临 SAS中文论坛 (https://mysas.net/forum/) Powered by Discuz! X3.2