2015-04-23 148 views
1

您能解释一下,为什么SAS在宏中或在proc report执行后将“≤”解释为“=”?SAS在宏执行中无法解释符号“≤”?

例如

%let a= ≤ ; 

%put a is equal to &a; 

SAS日志中显示以下信息:

SYMBOLGEN: Macro variable A resolves to = 
a is equal to = 

我也用报价/屏蔽功能,但它并没有帮助。

+0

执行后将“≤”解释为“=”。 –

+0

默认情况下,SAS没有启用UTF-8支持。 –

回答

4

≤不是标准ASCII字符集的一部分。

可能是SAS编辑器不支持扩展字符集的情况,例如, UTF-8或Unicode。

当我从浏览器中将≤符号复制/粘贴到SAS编辑器时,它会变成=字符。

如果您希望在datastep或宏中执行小于或等于逻辑比较,只需使用<=即可。

+0

感谢您的解释。我只是想知道如何在报告定义语句中显示它。 –

+0

如果您想在输出中嵌入符号,例如在标题或列标题中,并且您将它发送到ODS HTML,只需使用'define var /'≤';'。 –

+0

我需要使用ODS语句添加到我的rtf中。 –