我一直在尝试基于子字符串在sas中创建列。我需要创建一个存储在由'\'分隔的列中的每个子字符串的coloumn。例如: -
prexa \医疗信息\医疗字母02是存储在一列中的单个字符串。我想有三列col1: prexa col2:医疗信息和Col3:医疗。我是sas的新手,已经尝试但无法继续。
此列的数值也没有子字符串。
答案 0 :(得分:1)
不完全确定这是你所追求的,但可能会让你走上正轨:
data have;
informat str $60.;
infile datalines dlm = "," truncover;
input str;
datalines;
prexa\Medical Information\Medical
some\other\string
run;
data want(drop = i);
set have;
array column(10) $ 32;
do i = 1 to (count(str, "\") + 1);
column(i) = scan(str, i, "\");
end;
run;
在ARRAY语句中,将10替换为您认为可能需要的最大列数,将32替换为任何列的最大长度。
结果: