无法在SAS中导入带有异常字符的制表符分隔文件

时间:2014-04-04 11:19:50

标签: sas

您好我正在尝试导出SAS中的制表符分隔文件,如下所示

点名 Sumit1 10 Sumit2 20 SUmit4 30 SUmit5 85 SUmit6 90 SUmit7 39 hfg├╢┬«Q-┬▒├▓S├Ç┬«t├⌐├«├ôVU┬½┬æ├«j'n5E┬òd├╖Yb#$┬¡┬ÅAK┬«S┬Ä┬å ├┐-├â┬ìK├òw┬┐├│├Ñ0“┬ñh┬ùt0Ld89 SUmit8 48 SUmit9 70 SUmit10 20 SUmit11 90

我使用以下代码导入文件

data names;
infile "C:xxxxxxxx\names.txt" 
delimiter='09'x MISSOVER DSD lrecl=32767 firstobs=2;
informat names $150.;
informat Points best32.;
format names $150.;
format Points best12.;
input names $
Points;
run;

导入后的sas数据集如下所示:

名称点数 Sumit1 10 Sumit2 20 SUmit4 30 SUmit5 85 SUmit6 90 SUmit7 39 hfg├╢┬«Q-┬▒├▓S├Ç┬«t├⌐├«├ôVU┬½┬æ├«j'n5E┬òd├╖Yb#$┬¡┬ÅAK┬«S┬Ä┬å ├┐-├â┬ìK├òw┬┐├│├Ñ0“┬ñh┬ùt0Ld。

所以基本上所有的行都没有在sas中导入,并且由于存在一些不寻常的字符而停止 (我不知道这个字符叫什么)第7行。

我需要导入1000个这样的文件。所以我使用宏来导入文件。 有人可以帮助我如何在SAS中导入这种类型的文件。

1 个答案:

答案 0 :(得分:0)

尝试此代码.....相应地更改长度......

DATA names;
LENGTH Names $ 91 Points 8 ;
FORMAT Names  $CHAR91. Points  BEST2. ;
INFORMAT Names  $CHAR91. Points           BEST2. ;
INFILE 'C:xxxxxxxx\names.txt'
LRECL=32767 ENCODING="LATIN1" TERMSTR=CRLF DLM='09'x MISSOVER DSD ;
INPUT Names : $CHAR91. Points : ?? BEST2. ;
RUN;