我有一个数据集如下:
country
United States, Seattle
United Kingdom, London
如何将国家/地区拆分为SAS中的数据,如:
country city
United States Seattle
United Kingdom London
答案 0 :(得分:15)
使用函数SCAN(),逗号作为分隔符。
data test;
set test;
city=scan(country,2,',');
country=scan(country,1,',');
run;
答案 1 :(得分:0)
另一种选择,INFILE magic
(google关于该主题的论文的术语);用于解析一个字符串中的许多变量和/或处理带引号的字段,这样可以更好地处理scan
。
filename tempfile "c:\temp\test.txt";
data have;
input @1 country $50.;
datalines;
United States, Seattle
United Kingdom, London
;;;;
run;
data want;
set have;
infile tempfile dlm=',' dsd;
input @1 @@;
_infile_=country;
format newcountry city $50.;
input newcountry $ city $ @@;
run;
tempfile
可以是任何文件(或者您在其中创建的文件,其中包含任何字符以避免过早的EOF)。