楼主: scarfacetony
3485 3

如何用SAS读取长数据 [推广有奖]

  • 2关注
  • 2粉丝

已卖:182份资源

讲师

83%

还不是VIP/贵宾

-

TA的文库  其他...

从零开始

数据分析书籍资料

他山之石

威望
0
论坛币
3204 个
通用积分
10.4430
学术水平
12 点
热心指数
13 点
信用等级
13 点
经验
35345 点
帖子
254
精华
0
在线时间
829 小时
注册时间
2012-2-16
最后登录
2020-2-26

楼主
scarfacetony 发表于 2012-10-16 18:06:54 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
我的原始数据一行包含很多个字符,可能上千,我用这个程序跑的时候,只能跑到部分短的数据,过长的行读不到,请问大侠如何处理?
data logout;
        infile 'F:\logout.txt' delimiter=',&}' missover;
        input #1 @'t1:' host :$20.
                #1 @'t2:' urs :$40.
                #1 @'t3:' id :$10.
                #1 @'t5:' time :$10.
                #1 @'clientid":"' client :$20.
                #1 @'cp50ct":' cp50ct :$20.
                #1 @'cp60ct":' cp60ct :$20.
                #1 @'cp50my":' cp50my :$20.
                #1 @'sellmy":' sellmy :$20.
                #1 @'ednm":' ednm :$20.
                #1 @'maxea":' maxea :$10.
                #1 @'maxes":' maxes :$10.
                #1 @'maxpet":' maxpet :$10.
                #1 @'hynm":' fcount :$10.
                #1 @'mxlv":' advlv :$10.;
run;
二维码

扫码加我 拉你入群

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

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

关键词:如何用 长数据 delimiter missover delimit amp logout 如何

看了这个视频,我于是有了进股市的信心!
https://bbs.pinggu.org/thread-2787427-1-1.html

沙发
reeker 发表于 2012-10-16 18:17:08
同样关注。期待高手现身解答。

藤椅
iRoss2007 在职认证  学生认证  发表于 2012-10-16 19:41:10
问题在于默认缓冲区太小了,你可以在infile语句后加入lrecl=32767,即

data logout;
        infile 'F:\logout.txt' delimiter=',&}' missover lrecl=32767;
        input #1 @'t1:' host :$20.

sas help中说到:”LRECL=logical-record-length
specifies the logical record length.
Default:Dependent on the file characteristics of your operating environment
Restriction:LRECL is not valid when you use the DATALINES file specification.
Interaction:Alternatively, you can specify a global logical record length by using the LRECL= System Option in SAS System Options: Reference.
Operating environment:Values for logical-record-length are dependent on the operating environment. For details, see the SAS documentation for your operating environment.
Tip:LRECL= specifies the physical line length of the file. LINESIZE= tells the INPUT statement how much of the line to read. “
已有 1 人评分学术水平 热心指数 信用等级 收起 理由
scarfacetony + 1 + 1 + 1 多谢分享,已解决

总评分: 学术水平 + 1  热心指数 + 1  信用等级 + 1   查看全部评分

文(伪)科(码)男(农), 弹幕爱好者,微软脑残粉,萧亚轩脑残

板凳
scarfacetony 发表于 2012-10-17 10:00:16
iRoss2007 发表于 2012-10-16 19:41
问题在于默认缓冲区太小了,你可以在infile语句后加入lrecl=32767,即

data logout;
多谢楼上,已解决
看了这个视频,我于是有了进股市的信心!
https://bbs.pinggu.org/thread-2787427-1-1.html

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

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2025-12-12 14:02