加载中…
个人资料
谷子歌的2018
谷子歌的2018
  • 博客等级:
  • 博客积分:0
  • 博客访问:121,737
  • 关注人气:199
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
相关博文
推荐博文
谁看过这篇博文
加载中…
正文 字体大小:

纵向合并数据集,不要让长度不一致而出现Warning

(2013-01-08 19:14:48)
标签:

append

纵向合并

最大长度

杂谈

分类: Data_Coding

问题描述:

纵向合并数据集时,如果字符型变量的长度不一致时,就有可能会被截断。

自己手动定义变量长度时,一是麻烦,二是不好确定变量的最大长度究竟设为多少最合适。


解决思路:

利用变量字典找出最大长度,对合成的新数据的变量按最大长度进行定义。


示例展示:

 

 

 

data a;

length a $ 9;

length b $ 10;

a="a9"  ;

b="b10";

run;

 

data b;

  length a $ 10;

  length b $ 11;

a="a10";

b="b11";

run;

 

 

proc sql;

   create table _tmp  as

   select  name ,max(length) as length

   from sashelp.vcolumn

   where libname=upcase("WORK" and memtype="DATA" and type='char'

   group by name;

quit;

 

 

proc sql;

   select   catx(' ' name,'$ ', length) into :lenlist separated  by ' '

   from _tmp;

quit;

 

/ *check it*/

%put &lenlist;

 

 

data  c;

   length &lenlist;

  set a b;

run;

0

阅读 评论 收藏 转载 喜欢 打印举报/Report
  • 评论加载中,请稍候...
发评论

    发评论

    以上网友发言只代表其个人观点,不代表新浪网的观点或立场。

      

    新浪BLOG意见反馈留言板 电话:4000520066 提示音后按1键(按当地市话标准计费) 欢迎批评指正

    新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 会员注册 | 产品答疑

    新浪公司 版权所有