【问题标题】:Proc import imports wrong datatype from CSVProc import 从 CSV 导入错误的数据类型
【发布时间】:2013-12-23 04:59:28
【问题描述】:

我一直在尝试将 CSV 导入一个流程节点,该节点不关心其余字段(字段数也是动态的),但只关心 2 或 3 个。但在其他字段中,我有正在导入的日期字段以错误的方式。该字段自动分配为 Date20。虽然它实际上是日期时间。另一个应该是 16 位字符的字段也被导入为数字并被截断(以 9.401153E15 的形式显示)。处理后,此节点将数据导出为 CSV,我在那里看到所有这些错误。

我检查了几个链接,例如http://www2.sas.com/proceedings/sugi30/038-30.pdf,这些链接与主题相关,但与上下文无关。我该如何解决这个问题?

【问题讨论】:

    标签: csv import sas


    【解决方案1】:

    PROC IMPORT for CSV 只生成 datastep 代码,所以我建议简单地将 datastep 代码复制到您的程序中(它应该在日志中可见)并对其进行编辑以反映您的需求。

    【讨论】:

    • 如果你不喜欢复制和粘贴并且你在旧的IDE中,你可以通过Run->Recall Last Submit来获得它。这会将其粘贴到活动代码编辑器的顶部。
    • 这里的问题是,我无法假设所有字段都应包含在 CSV 中。 CSV 可以有 n 个字段。而且这种特殊情况仅在某些情况下出现。
    • 如果是这种情况,并且您需要以编程方式(即,而不是手动)执行此操作,您可能需要通过某种数据字典来解决此问题,您可以在其中从元数据生成输入语句(数据字典)。根据数据,您还可以即时将日期转换为日期时间字段,但这会变得更加复杂并存在潜在问题的风险。
    • 好的。谢谢乔。让我在这个方向上做一些研究。
    猜你喜欢
    • 1970-01-01
    • 2016-12-24
    • 2019-09-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-02-10
    • 1970-01-01
    • 2019-11-21
    相关资源
    最近更新 更多