使用SAS中另一个变量的部分字符串创建新变量

时间:2018-10-18 16:06:49

标签: sas substr

我是SAS新手,想保留连字符'-'之前的内容以创建新变量:

 x 
abc-something
efgh-everything
hij-something

我尝试过:

DATA NEW 
    set OLD;
    y = (compress(substr([x], 3, 1));
RUN;
PROC PRINT DATA = NEW; 
RUN; 

使它看起来像这样,但是不起作用:

 x 
abc
efgh
hij

2 个答案:

答案 0 :(得分:2)

使用scan()函数根据定界符分割字符串。

y=scan(x,1,'-');

如果只想前三个字符,请使用SUBSTR()函数。

y=substr(x,1,3);

答案 1 :(得分:1)

尝试不带方括号。也不需要压缩。