楼主: jiny.zheng
1163 3

怎样存长的数据 [推广有奖]

  • 1关注
  • 0粉丝

大专生

61%

还不是VIP/贵宾

-

威望
0
论坛币
6 个
通用积分
0
学术水平
0 点
热心指数
1 点
信用等级
0 点
经验
396 点
帖子
35
精华
0
在线时间
48 小时
注册时间
2012-4-21
最后登录
2014-3-9

楼主
jiny.zheng 发表于 2012-11-7 15:45:41 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
求问,我发现我的数据大约长度都是20位左右的,但是SAS自动都存为15位还是12位左右,求问该怎么办?后面的三位都被忽略了。。
二维码

扫码加我 拉你入群

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

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

关键词:怎么办 左右

沙发
davil2000 发表于 2012-11-7 16:13:28
对合法的数值型变量输入值,SAS不会忽略任何位数的。
你可以通过改变输出格式来改变显示状态。比如,
format  x 20.2;

  
R是万能的,SAS是不可战胜的!

藤椅
voyagevio 发表于 2012-11-8 09:56:28
输入时用informat设置读入的精度
输出时用format

板凳
moyunzheng 发表于 2012-11-8 16:41:35
数值型变量的长度默认为8,足够普通计算使用了(超级科学计算可能需要更高精度),所以一楼所问的应该是字符型变量.
在Data步中,如果没有事先定义字符变量的长度,那么SAS总是以第一个进入PDV的字符值的长度来定义.之后进入的字符值如果长度大于第一个,就会产生截尾,而且有时不会产生提醒,需要特别注意.
事先定义字符型变量的长度可以使用informat,length,retain(较少用吧),不太好的可能就是会打乱变量的顺序(另一方面,如果想让某个变量在前面也可以这样做)
  1. data a;
  2. id=_n_;a="what";output;
  3. id=_n_;a="what is that";output;
  4. run;

  5. data b;
  6. informat a $24.;
  7. id=_n_;a="what";output;
  8. id=_n_;a="what is that";output;
  9. run;

  10. data c;
  11. length a $ 24;
  12. id=_n_;a="what";output;
  13. id=_n_;a="what is that";output;
  14. run;
复制代码

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

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2025-12-20 23:11