全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
1129 4
2020-09-25
悬赏 100 个论坛币 已解决
长这样的文本数据怎么读啊(不手动把他排好的情况下)
其实只有四个变量,但是横着排了,而且最后一行只有一组,上面的行都是三组
score2.txt
大小:(172 Bytes)

 马上下载



QQ截图20200925222353.jpg

原图尺寸 74.19 KB

QQ截图20200925222353.jpg

score2.txt

大小:172 Bytes

 马上下载

最佳答案

xiaopingN 查看完整内容

如果text数据太大不适合copy到Datalines,可以用下面的code: data want; infile "C:\Users\XXX\Downloads\score2.txt" dlm='09'x ; INPUT id: BEST7. gender: $1. mid: BEST2. final: BEST2. @@; run;
二维码

扫码加我 拉你入群

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

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

全部回复
2020-9-25 21:20:22
如果text数据太大不适合copy到Datalines,可以用下面的code:
data want;
infile "C:\Users\XXX\Downloads\score2.txt"   dlm='09'x ;
INPUT id: BEST7.
      gender: $1.
      mid: BEST2.
      final: BEST2. @@;
run;
二维码

扫码加我 拉你入群

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

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

2020-9-25 23:36:12
data want;
input id gender $  mid final @@;
datalines;
2002001        M        78        88        2002002        F        75        80        2002003        F        86        79
2002004        M        92        88        2002005        M        88        93        2002006        F        67        90
2002007        M        86        77        2002008        M        80        87        2002009        F        95        86
2002010        M        79        90                                                               
;
run;
二维码

扫码加我 拉你入群

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

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

2020-9-26 11:09:54
xiaopingN 发表于 2020-9-26 01:14
如果text数据太大不适合copy到Datalines,可以用下面的code:
data want;
infile "C:\Users\XXX\Download ...
厉害,确实都出来了,但老师这个dlm='09'x  还有@@代表什么意思啊
二维码

扫码加我 拉你入群

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

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

2020-9-28 23:30:07
rbd722798 发表于 2020-9-26 11:09
厉害,确实都出来了,但老师这个dlm='09'x  还有@@代表什么意思啊
不好意思, 回晚了。dlm 是用来告诉SAS你原始数据是用什么分隔符。例如用逗号分开的, 就是dlm=“,“,你这是tab 分隔开的,就用dlm='09'x。
@@ 用在input语句的最后,提示SAS 原始数据一行有多个obs,而不是读完一个obs 就转入下一行。
二维码

扫码加我 拉你入群

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

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

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群