楼主: jialuo.wang
2573 5

sas读取外部文件只能读取700多万条记录? [推广有奖]

  • 0关注
  • 1粉丝

已卖:1016份资源

大专生

53%

还不是VIP/贵宾

-

威望
0
论坛币
6876 个
通用积分
0
学术水平
0 点
热心指数
2 点
信用等级
0 点
经验
297 点
帖子
20
精华
0
在线时间
94 小时
注册时间
2009-12-10
最后登录
2021-5-25

楼主
jialuo.wang 发表于 2013-1-19 03:31:14 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
菜鸟问题,我用proc import读取外部.del文件(db2),只能读入700多万条。总共有900多万条。
是不是sas读取数据条数有限制?
还是我用的读取方法有问题呢?
程序参考如下:

PROC IMPORT OUT= SASUSER.abcd
            DATAFILE= "D:\aaa.del"
            DBMS=DLM REPLACE;
     DELIMITER=',';
     GETNAMES=YES;
         DATAROW=2;
RUN;


拜托了!!!
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:delimiter replace sasuser delimit import 记录 700

学海无涯

沙发
leonkd 在职认证  发表于 2013-1-19 03:37:02
哇,还没碰到过这个数量级的dataset

藤椅
bobguy 发表于 2013-1-19 07:31:13
AFAIK there is no limitation as long as your system hardware can handle in a data step.   Try no using import for text file. The example below reads and writes 10**8 rows.

12   data _null_;
13      file 'c:\temp\i.txt';
14      do i=1 to 1e8;
15        put i;
16      end;
17   run;

NOTE: The file 'c:\temp\i.txt' is:
      Filename=c:\temp\i.txt,
      RECFM=V,LRECL=256,File Size (bytes)=0,
      Last Modified=18Jan2013:18:17:29,
      Create Time=18Jan2013:18:16:39

NOTE: 100000000 records were written to the file 'c:\temp\i.txt'.
      The minimum record length was 1.
      The maximum record length was 9.
NOTE: DATA statement used (Total process time):
      real time           26.13 seconds
      cpu time            18.70 seconds


18
19   data _null_;
20      infile 'c:\temp\i.txt';
21      input i;
22   run;

NOTE: The infile 'c:\temp\i.txt' is:
      Filename=c:\temp\i.txt,
      RECFM=V,LRECL=256,File Size (bytes)=988888898,
      Last Modified=18Jan2013:18:17:55,
      Create Time=18Jan2013:18:16:39

NOTE: 100000000 records were read from the infile 'c:\temp\i.txt'.
      The minimum record length was 1.
      The maximum record length was 9.
NOTE: DATA statement used (Total process time):
      real time           17.26 seconds
      cpu time            17.08 seconds


已有 1 人评分经验 论坛币 学术水平 热心指数 信用等级 收起 理由
Imasasor + 80 + 100 + 3 + 3 + 3 精彩帖子

总评分: 经验 + 80  论坛币 + 100  学术水平 + 3  热心指数 + 3  信用等级 + 3   查看全部评分

板凳
jialuo.wang 发表于 2013-1-21 10:15:56
谢谢,后来我用了infile,还是只能录入700多万。而且sas不报错。最后BI同事说,是因为原来文件从DB2导出 的,DB2有自己大型文件的格式,导入时候会无法识别。所以后来就找到后面2百万数据里面有点乱码,去除掉,就导入了。楼上兄弟对的,sas没有这个限制。谢谢哈
学海无涯

报纸
tangliang0905 发表于 2013-1-21 11:06:59
可不可以先import前4m个,在输入后面的

地板
Imasasor 发表于 2013-1-21 13:45:38
bobguy 发表于 2013-1-19 07:31
AFAIK there is no limitation as long as your system hardware can handle in a data step.   Try no usi ...
are u a girl?
欢迎加入亚太地区第一R&Python数据挖掘群: 251548215;

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2026-1-1 06:44