我有一个这样的原始数据文件:
JamesBrownSenior
AshleyPinkJunior
第一列是名称。第二个是颜色标签。 ..但是对于每一列,观察长度都不同。
我试过这个
data ct_11;
infile '';
length Name $ 10 Tag $ 10 Title $ 10;
input Name $ Tag $ Title $;
run;
它不起作用。我想我错过了一些选择。
答案 0 :(得分:1)
如果没有分隔符,则必须将其作为单个变量读取,然后根据规则将其拆分。在你的情况下,tou可以使用正则表达式添加分隔符,然后使用scan函数将单词写入不同的变量。
data ct_11 (keep=name tag title);
infile 'z:\nametagtitle.txt';
length line $120 name tag title $40;
input line $;
dlmline = prxchange('s/([A-Z]{1}[a-z]*)([A-Z]{1}[a-z]*)([A-Z]{1}[a-z]*)/$1 $2 $3/',-1,line);
name = scan(dlmLine,1);
tag = scan(dlmline,2);
title = scan(dlmline,3);
run;