【问题标题】:Use SAS to import CSV file with 3070 fields使用 SAS 导入包含 3070 个字段的 CSV 文件
【发布时间】:2011-06-27 15:45:46
【问题描述】:

我正在使用 AIX 5.3 和 SAS 9.1.3

我有一个 2.7G 的 CSV 文件。
该文件有大约 110k 行。
每行有 3070 个字段。

我使用文件名 myCSVfile LRECL=32768 ;
然后,我使用 Proc import ... delimiter = "," ...

SAS 程序似乎挂了。
运行 1 小时后它仍然存在。

我将文件头部设置为只有 40 行,然后重试。
这一次,似乎也挂了。
运行 1 小时后仍然存在。
这个小文件没有任何改进。

日志文件为 0 字节。
另外,当我 ps -ef 时,该进程已经占用了 10% 的 CPU。
最后我必须在离开办公室之前杀死它。

有什么提示可以解决这个问题吗?

萧亚文

【问题讨论】:

  • Alvin,您可能还想将其交叉发布到 www.runsubmit.com 更多 SAS 专家定期检查。
  • 另外,发布您正在使用的实际代码以及有关输入文件的更多信息。
  • 今天早上,我再次运行导入,没有任何更改,它可以使用 1 小时导入 40 行文件。所以,程序是正确的,只是运行很慢。

标签: csv import sas


【解决方案1】:

你需要使用proc import吗?这可能会更好:

data tmp;
  infile './your_data_file' dlm=',' lrecl=as_big_as_you_need;
  input var1 var2 ...;
run;

以这种方式运行它还可以让您检查日志文件中发生的错误。

【讨论】:

    【解决方案2】:

    还尝试添加 trunco​​ver 选项吗?检查以确保没有任何行 > 32767 字符,因为这会导致问题。使用外部程序(即非 SAS)进行此检查。

    干杯 抢

    【讨论】:

      猜你喜欢
      • 2011-10-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-02-08
      • 2011-02-03
      • 2017-10-10
      • 2017-03-17
      相关资源
      最近更新 更多