SAS输入数据与特殊字符

时间:2016-09-21 03:35:05

标签: database import sas special-characters

我正在尝试将一些dat文件(以逗号分隔)导入SAS University。但是,一个变量包含特殊字符(例如法语口音)。大多数被 取代,但也有一些观察有一些问题。

问题示例:

数据中的原始观察结果如下:

Crème Brûlée,105,280

运行以下命令:

DATA BenAndJerrys;
    INFILE '/folders/myfolders/HW3/BenAndJerrys.dat' DLM = ',' DSD MISSOVER;
    INPUT flavor_name :$48. portion_size calories;
RUN;

有这个问题:

flavor_name=Cr�me Br�l�e,105 portion_size=280 calories=

正如您所看到的,作为section_size的值的值105与flavor_name的值合并,并且卡路里的值280被分配给part_size。

如何解决此问题并允许SAS使用特殊字符导入数据?

1 个答案:

答案 0 :(得分:2)

尝试告诉SAS读取文件时要使用的编码。

我使用Windows NOTEPAD编辑器将您的样本行复制并保存到文本文件中。

%let path=C:\Downloads ;
data _null_;
  infile "&path\test.txt" dsd encoding=wlatin1;
  length x1-x3 $50 ;
  input x1-x3;
  put (_all_) (=);
run;

记录结果。

x1=Crème Brûlée x2=105 x3=280
NOTE: 1 record was read from the infile "C:\Downloads\test.txt".
      The minimum record length was 20.
      The maximum record length was 20.