当我通过PROC IMPORT
加载Excel工作表时,本地安装的SAS会自动将带有空格的变量名替换为下划线(_)。患者ID将变为Patient_ID
,健康记录将变为Health_Records
。
但是,当我在SAS Studio中加载相同的文件时,不会应用该重命名约定。因此,患者ID和健康记录保持原样......没有下划线。
因此,我如何在SAS Studio中调用这些变量?当我尝试调用IF Patient ID THEN this
时会弹出语法错误。我是否必须将下划线物理添加到原始数据集中,还是有更简单的方法?
答案 0 :(得分:4)
差异是由VALIDVARNAME选项的设置引起的。
要引用带空格的变量名,您需要使用name-literal 例如。
"Patient ID"n
带引号的字符串后跟字母N。
答案 1 :(得分:2)
正如@data_null_注意到,VALIDVARNAME=ANY
是造成这种情况的原因。
如果您希望SAS Studio的行为与桌面SAS一样,只需添加
即可options validvarname=v7;
到你的程序的顶部(或者在你的导入之前运行的某个程序,比如autoexec)。然后你的下划线将会返回。