全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
6033 6
2010-12-17
比如我有csv格式的文件,文件中部分行有缺省值
66;AT;000052201611;;;1999;DEU;
66;AT;000052230211;;;;1999;DEU
66;AT;000089847207;;MONAT;2003;DEU
第一行缺失了2个数据,第二行缺失了3个数据,第三行缺失了一个数据
我的程序如下:
data all;
infile 'd:\1.txt' dlm=';';

input a$ b$  c$ d$ e$ f$ g$;

run;

但是读进来的时候,缺失数据自动消失了,所以导致错误的列,有什么办法解决吗,谢谢
二维码

扫码加我 拉你入群

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

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

全部回复
2010-12-17 22:21:49
1# wylkwq
你可以试试 dsd option,比如:
data have;
  infile cards dlm=";" dsd;
  input (a b c d e f g) ($);
cards4;
66;AT;000052201611;;;1999;DEU;
66;AT;000052230211;;;;1999;DEU
66;AT;000089847207;;MONAT;2003;DEU
;;;;

run;
二维码

扫码加我 拉你入群

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

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

2010-12-17 22:23:07
我试了,但是dsd,会不管你缺失的是几个变量,通通给你当成缺失了一个变量处理
导入后的数据会是
66;AT;000052201611空  1999;DEU;
66;AT;000052230211空 1999;DEU
66;AT;000089847207空 MONAT;2003;DEU
二维码

扫码加我 拉你入群

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

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

2010-12-17 22:25:20
我的程序结果,你看了吗?
二维码

扫码加我 拉你入群

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

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

2010-12-17 22:49:22
老兄,我的是数据文件,数据大的只能用infile,不能用cards
二维码

扫码加我 拉你入群

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

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

2010-12-20 14:30:39
外部文件也可以,比如:
data have;
  infile "d:\sas\test.txt" dlm=";" dsd;
  input (a b c d e f g) ($);
run;

如果还不行,你可以上传点数据给我。
二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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