在SAS中读取句点作为字符值

ath*_*esh 6 sas

我正在读一段''.作为字符变量的值,但它将其作为空白值读取.

data output1;
input @1 a $1. @2 b $1.  @3 c $1.;
datalines;
!..
1.3
;
run;

Output       Required
------       --------
A  B  C      A  B  C
!            !  .  .
1     3      1  .  3
Run Code Online (Sandbox Code Playgroud)

请帮助我阅读一段时间.

vas*_*sja 11

输出由所使用的信息确定(在您的情况下为$ w.信息,$1.在您的代码中请求,因此$1.首先是信息定义,变量的长度定义是此的副产品).

使用$ char.获得理想结果的信息.

data output1;
input @1 a $char1. @2 b $char1.  @3 c $char1.;
datalines;
!..
1.3
;
run;
Run Code Online (Sandbox Code Playgroud)

来自文档:

$ w Informat $ w.信息修剪前导空格并在存储文本之前左对齐值.此外,如果字段仅包含空格和单个句点,则为$ w.将句点转换为空白,因为它将句点解释为缺失值.$ w.informat将字段中的两个或多个句点视为字符数据.

$ CHARw.信息$ CHARw.在存储值之前,informat不会修剪前导和尾随空白或将输入数据字段中的单个句点转换为空白.