这似乎应该很简单,但我在文档中找不到如何做到这一点。我想读一个逗号分隔的文件,但它很宽,我只想读几列。
我以为我可以这样做,但@
指针似乎指向文本的列,而不是由分隔符定义的列号:
data tmp;
infile 'results.csv' delimiter=',' MISSOVER DSD lrecl=32767 firstobs=2;
@1 id
@5 name$
run;
在此示例中,我想根据分隔符仅读取第 1 列和第 5 列中的内容,但 SAS 正在读取文本文件位置 1 和位置 5 中的内容。所以如果输入文件的第一行是这样开始的
1234567, "x", "y", "asdf", "bubba", ... 更多变量 ...
我想要id=1234567
和name=bubba
,但我得到name=567, "
。
我意识到我可以阅读每一列并删除我不想要的那些,但必须有更好的方法。