首页 > 解决方案 > 使用 SAS 中另一个变量的部分字符串创建新变量

问题描述

我是 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

标签: sassubstr

解决方案


使用该scan()函数根据分隔符拆分字符串。

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

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

y=substr(x,1,3);

推荐阅读