全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
3255 7
2013-02-17
比如 A="ABC"  B="EFG"  那么C=CATQ(" ",A,B)   出来的结果不应该是ABCEFG吗?怎么是 ABC "EFG"?   求解释。
二维码

扫码加我 拉你入群

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

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

全部回复
2013-2-17 18:01:59
data a;
        input a $3. b $3.;
        cards;
ABCDEF
;
run;

data b;
        set a;
        D=CATQ(" ",A,B);
run;

————————————————————
跑出来不是你那个结果哦
二维码

扫码加我 拉你入群

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

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

2013-2-17 18:08:10
原来的数据是A = "Single"
B = "Blank Between"
结果是 Single "Blank Between"
二维码

扫码加我 拉你入群

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

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

2013-2-17 23:24:11
这本来就是CATQ的用法啊,
CATQ Function
Concatenates character or numeric values by using a delimiter to separate items and by adding quotation marks to strings that contain the delimiter.
根据你的描述,应该是用CATS,
CATS Function
Removes leading and trailing blanks, and returns a concatenated character string.
其实,还有CATT和CATX另外两个,
CATT是只管移除掉trailing blanks,然后和CATS用法一致,
CATX和CATQ用法差不多,要用分隔符把各个字符分开,但是他同时也要去掉leading和trailing的空格

data _null_;
a='abc';
b='efg';
a1=' abc ';
b1=' efg ';
c1=cats(a,b);
c2=catq(' ', a,b);
c3=catt(a1,b1);
c4=catx(' ', a1, b1,'C');
c5=catq(' ', a1, b1, 'C');
put c1;
put c2;
put c3;
put c4;
put c5;
run;
二维码

扫码加我 拉你入群

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

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

2013-2-18 08:55:03
tangliang0905 发表于 2013-2-17 23:24
这本来就是CATQ的用法啊,
CATQ Function
Concatenates character or numeric values by using a delimit ...
catq(" ",A,B) 因为modifiers是必须有的,而delimiter是选择性有的,我就把括号里面的“ ” 当成modifiers,然后就怎么也看不懂。按照你的意思 “ ” 应该是delimiter,所以含有空格的加上引号。是吧
二维码

扫码加我 拉你入群

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

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

2013-2-18 10:06:14
heperwong 发表于 2013-2-18 08:55
catq(" ",A,B) 因为modifiers是必须有的,而delimiter是选择性有的,我就把括号里面的“ ” 当成modifier ...
应该是这个意思 ,Concatenates character or numeric values by using a delimiter to separate items and by adding quotation marks to strings that contain the delimiter.
二维码

扫码加我 拉你入群

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

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

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

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