全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
2011-11-9 16:37:34
crazygoing 发表于 2011-11-9 16:29
可以的。我的思路就是把原数据集清空,把新的数据集加进去就可以了。完整代码如下
谢谢关注,同样存在变量类型不一致的问题
二维码

扫码加我 拉你入群

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

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

2011-11-9 17:58:29
直接上数据吧
二维码

扫码加我 拉你入群

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

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

2011-11-9 21:21:08
不好意思...我只会这个...iml求学习啊~~
复制代码
二维码

扫码加我 拉你入群

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

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

2011-11-9 23:08:25
andy162639 发表于 2011-11-9 10:32
怎么声明呢?可否把您的代码修改一下,告诉我,谢谢。
一模一样的做法呀,只是分开来做而已。
data a;
input a b c d e f g h k $ t p $;
cards;
1 2 3 4 5 6 2 4 r 3 g
5 6 3 2 4 5 6 7 t 4 t
3 4 5 6 7 8 2 5 w 5 r
;
filename outn 'c:\outn.sas';
filename outc 'c:\outc.sas';
options source2;
proc contents data=a out=var noprint;run;
data varn;
set var;
where varnum>=2 and type=1;
if _n_=1 then name='array nmis{*} '||trim(name);
run;
data varc;
set var;
where varnum>=2 and type=2;
if _n_=1 then name='array cmis{*} '||trim(name);
run;
data _null_;
file outn;
set varn;
put name;
run;
data _null_;
file outc;
set varc;
put name;
run;
data b;
set a;
%include outn;
;
if _n_>=2 then do i=1 to dim(nmis);
nmis(i)=.;
end;
drop i;
%include outc;
;
if _n_>=2 then do i=1 to dim(cmis);
cmis(i)='';
end;
drop i;
run;
二维码

扫码加我 拉你入群

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

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

2011-11-11 16:06:55
给你提供一个很好的方法,我们老师经常用到
参数选择中,打开创建html结果
proc contents data=数据集;
会将数据集中得变量名全部输出到html中,复制黏贴 就可以在你的程序中使用了
二维码

扫码加我 拉你入群

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

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

2011-11-12 17:15:13
data a;
input a1  a2 a3 a4 a5;
cards;
3  2 3 4 5
4 3 4 5 6
;
run;
proc iml;
use a;
read all into x        ;
x[,3:5]=.; *如果是200-9000列,就写x[,200-9000];
create b from x;
append from x;
quit;
二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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