全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
2959 5
2012-08-15
在使用sas时format是常用的,我们肉眼看到的结果是format之后的,但肉眼是很容易被欺骗的。请看下面的例子:
proc format; /*首先定义一个format(小弟也是今天刚学到的),此处的含义是如果‘C’则显示为‘Cassette’,以此类推*/
   value $itemfmt
         'C'='Cassette'
         'R'='Radio'
         'T'='Television';
run;

data x; /*生成数据集x后,可以看下是什么(是Cassette、Radio、Television)*/
input x $;
format x $itemfmt.;
cards;
C
R
T
;
run;

data y; /*用这个语句可以非常简单的判断x中的值到底是什么*/
set x;
if x='Cassette' then y=1;
if x='C' then y=2;
run;

proc print data=x; /*而打印的结果与咱们肉眼看x的结果是一样的*/
run;

根据以上的例子很容易发现,肉眼看见的不是真实的值。类似由于format格式造成肉眼误差的还有不少,用的时候要注意噢!正好今天学习了下proc format这个东西,与大家分享。
二维码

扫码加我 拉你入群

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

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

全部回复
2012-8-24 09:33:05
format只是指定输出形式,存储还是按原值存储的
二维码

扫码加我 拉你入群

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

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

2012-8-24 11:36:21
thx for sharing
二维码

扫码加我 拉你入群

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

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

2013-12-23 17:19:37
复制代码
这样用的话,通过筛选得到的结果就是正常的,为什么呢?。。。
二维码

扫码加我 拉你入群

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

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

2013-12-24 13:52:20
Tigflanker 发表于 2013-12-23 17:19
这样用的话,通过筛选得到的结果就是正常的,为什么呢?。。。
j=put(i,x.); 已经将i的fomat值赋给了j了  所以j的值就为  a  b c d
二维码

扫码加我 拉你入群

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

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

2013-12-24 16:55:56
put/input 可以把蜃楼变成现实......
二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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