【发布时间】:2017-05-16 06:31:12
【问题描述】:
我正在尝试使用 SAS EG 导入向导将 excel 文件导入 SAS。我有一个类型为 char4 的字段 X。但是,它有数字数据。例如1101 在导入期间,SAS 会截断前导零,尽管数据类型是字符。有没有办法保留前导零。我不能在 SAS 中附加零,因为很少有值是合法的 3 位数字,并且由于前导零截断而变成 3 位数字的值很少。所以,很难弄清楚哪些值应该用前导零填充。
【问题讨论】:
-
该字段是Excel中的字符字段吗?在这种情况下,只要您将输入格式设置为字符并将长度设置为 4,SAS 就不应该截断您的值。如果它不是 excel 中的字符字段,您也不应该在 Excel 中使用前导零。
-
在 excel 中,它有可用的前导零。我认为这意味着它是一般/文本。
-
如果是通用/文本,如果 excel 文件中只有数字,SAS 可能很难理解它是一个字符。如果您将其更改为文本并重新导入,或者在导入向导的第三个屏幕中将类型设置为字符,将格式设置为 $char4.,将长度设置为 4,将输出格式设置为 $char4。你应该没事。
-
我最初尝试了向导选项,但它不起作用。但是在将 excel 格式显式转换为文本而不是一般格式后,它就起作用了。
-
太棒了!通常只需将第一个字段显式转换为文本就足够了,SAS 会知道发生了什么。
标签: sas