全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
8846 6
2013-04-03
悬赏 5 个论坛币 已解决
我有一个unicode格式的txt文件(附件q3.txt),首行是变量名,其余是数据。数据之间以(一个)空格分隔。如“11.jpg”所示。然后我用以下语句导入:
proc import datafile="c:\q3.txt"
out=work.w3
dbms=dlm
replace;
getnames=yes;
run;
proc print data=work.w3;
run;

结果如图“22.jpg”所示。很明显导入虽然成功,但
(1)都是文本,而不是数据;
(2)任意字符间都有一个空格;
(3)而且还莫名其妙地多出一行。
对于其他的格式(tab或csv),我会的,如dbms=tab;dbms=csv
我想要的结果像图“33.jpg”所示。可就是不会弄。哪位朋友帮帮忙?
11.jpg

原图尺寸 48.68 KB

11.jpg

22.jpg

原图尺寸 46.18 KB

22.jpg

33.jpg

原图尺寸 40.75 KB

33.jpg

q3.txt

大小:782 Bytes

 马上下载

最佳答案

zhengbo8 查看完整内容

首先,要说明你的文本文件格式是ucs-2 little endian,要使用UTF-16来读取,才不会出现空格。 另外,没有必要用IMPORT过程,这个容易出错,格式不好控制。 SAS代码: 截图: sorry,第二个图是错的,是firstobs=设置错了。
二维码

扫码加我 拉你入群

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

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

全部回复
2013-4-3 12:02:39
首先,要说明你的文本文件格式是ucs-2 little endian,要使用UTF-16来读取,才不会出现空格。
另外,没有必要用IMPORT过程,这个容易出错,格式不好控制。

SAS代码:

复制代码

截图:
2013-04-03_143436.gif

sorry,第二个图是错的,是firstobs=设置错了。

附件列表
2013-04-03_143436.gif

原图尺寸 6.71 KB

2013-04-03_143436.gif

二维码

扫码加我 拉你入群

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

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

2013-4-3 16:55:58
zhengbo8 发表于 2013-4-3 14:41
首先,要说明你的文本文件格式是ucs-2 little endian,要使用UTF-16来读取,才不会出现空格。
另外,没有必 ...
哎呀,这么快就搞定了?!谢谢你。给你该得的悬赏哈。下次有问题还向你请教。
二维码

扫码加我 拉你入群

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

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

2013-4-4 22:59:51
赫本挺好
二维码

扫码加我 拉你入群

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

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

2013-4-7 10:30:35
zhengbo8 发表于 2013-4-3 12:02
首先,要说明你的文本文件格式是ucs-2 little endian,要使用UTF-16来读取,才不会出现空格。
另外,没有必 ...
很热心。
二维码

扫码加我 拉你入群

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

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

2017-6-28 11:31:35
zhengbo8 发表于 2013-4-3 12:02
首先,要说明你的文本文件格式是ucs-2 little endian,要使用UTF-16来读取,才不会出现空格。
另外,没有必 ...
太赞了,正好碰到这个问题,搜到本帖顺利解决。
二维码

扫码加我 拉你入群

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

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

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

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