SAS中文论坛

标题: 跟crackman读SAS程序(90)--length语句对变量长度设置 [打印本页]

作者: shiyiming    时间: 2010-11-4 17:49
标题: 跟crackman读SAS程序(90)--length语句对变量长度设置
From crackman's blog on Baidu


               
                <p><font size="3">data crackman;<br>
input x;</font></p>
<p><font size="3">/*以下三个语句任选其一即可*/</font></p>
<p><font size="3"><strong><font color="#ff0000">/*length name $10.;*/</font></strong></font></p>
<p><font size="3"><strong><font color="#ff0000">/*informat name $10.*/</font></strong></font></p>
<p><font size="3"><strong><font color="#ff0000">/*format name $10.*/<br>
</font></strong>if x&lt;5 then name='小学生';<br>
else name='不是小学生';<br>
cards;<br>
1<br>
2<br>
3<br>
4<br>
5<br>
6<br>
7<br>
8<br>
9<br>
;<br>
run;<br>
proc print;<br>
run;</font></p>
<p><font size="3">看看这里面的红字标注的部分,加入和没加入这条语句结果是不一样的</font></p>
<p><font size="3">这里来解释一下:</font></p>
<p><font size="3">1.;LENGTH语句是变量存储长度的一个声明语句,是主动的声明语句.当你没有什么语句的时候,那么就是默认的长度或者就是读入第一个观测的长度。如果以后读入的数据长度超过则会产生截去部门数据。</font></p>
<p><font size="3">2.其实这个道理可以这样理解:现在房子里空间有限,如果用了length或者fotmat informat这些语句,等于是在存储东西之前先给房子的主人说我一件东西需要好大的空间来存放,这样主人就会安排合适你东西大小的空间给你存储东西,以后的东西都默认需要这样的大小空间。但是如果没有实现申明,那么房子主人根据你第一次存东西的需要的空间大小给你分配,但是如果后面的货物大了就放不下了。</font></p> <a href="http://hi.baidu.com/crack%5Fman/blog/item/cd8f0b0c2526f5de63d986bf.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/cd8f0b0c2526f5de63d986bf.html#comment">查看评论</a>




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