我在 SAS EG 和 DI 工作,面临一个非常奇怪的问题。
当我在SAS DI Studio或EG中查看数据集的列时,它看起来很好。但是当我将数据粘贴到记事本中时,会出现一些引号和空格。
但复制到记事本时的数据相同,
当我将此字段用作连接中的键时,我发现此问题,第6行的其他相关列值未进入输出,因为该第6条记录的匹配失败。
我尝试过很多东西,比如 tranwrd,dequote和compress 但是 none 正在改变我的结果。
有人可以帮助理解问题是什么以及如何解决这个问题。
答案 0 :(得分:3)
查看列中的内容,以便您可以决定如何处理它。此查询将显示字符串和字符串的十六进制表示。
proc sql;
select postcode,put(trim(postcode),$hex.) as hexcode,count(*) as nobs
from x
group by 1,2
;
quit;
因此,如果你看到像0A,0D,A0,08或其他不可打印代码的十六进制字符,那么你就可以弄清楚发生了什么。
所以你可能会发现你有POSTCODE =' LS5 3BT'用HEXCODE =' 4C533520334254'对于大多数记录。但也许有一些看起来像POSTCODE =' LS5 3BT'但是HEXCODE的值类似于' 0A4C533520334254'这意味着你在字符串的开头有一个换行符。或者也许不是空格(' 20' X)你在字符串的中间有一个标签(' 09' X)。