SAS中文论坛
标题:
急问一个关于infile的问题
[打印本页]
作者:
shiyiming
时间:
2005-3-29 15:38
标题:
急问一个关于infile的问题
我要导入一个txt文件,只有数据,没有变量。
数据对应的变量分别是:
num,a1,b1,c1,d1,a2,b2,c2,d2......a100,b100,c100,d100.
data sales;
infile '....';
input .....;
run;
在input那里引用macro的话,应该怎样处理呢?
Thx!!!
作者:
shiyiming
时间:
2005-3-29 16:41
标题:
不要两边贴
[code:1b737]
%macro x(n);
%do i=1 %to &n;
%do j=97 %to 100;
%sysfunc(byte(&j))&i
%end;
%end;
%mend;
data sales;
infile '....';
input num %x(100);
run;
[/code:1b737]
你又两个论坛都贴贴子。我最讨厌了,浪费资源。最重要的是。
分散了在一个论坛出现一个好贴的机率。
作者:
shiyiming
时间:
2005-3-29 16:46
标题:
thx!
太谢谢ahuige了!
不过上面所列举的变量名,我只是举个例子而已,假如我要求的变量名没有规则,比如是:
num,sales_new1,sales_old1,sales_switch1,sales_total1,......sales_new100,sales_old100,sales_switch100,sales_total100
是否就更复杂了呢?
作者:
shiyiming
时间:
2005-3-29 17:00
标题:
你再帮我看看,好吗?
太好了!
我的需要的变量名是这样的:
customer_id
RP_new_sales_092404
mkt_new_sales_092404
RP_switch_sales_092404
mkt_switch_sales_092404
RP_repeat_sales_092404
mkt_repeat_sales_092404
RP_total_sales_092404
mkt_total_sales_092404
RP_new_sales_100104
mkt_new_sales_100104
RP_switch_sales_100104
mkt_switch_sales_100104
RP_repeat_sales_100104
mkt_repeat_sales_100104
RP_total_sales_100104
mkt_total_sales_100104
...
...
...
(8 sales variable for each week, starting from 09/24/04, to 03/11/05)
...
...
...
RP_new_sales_031105
mkt_new_sales_031105
RP_switch_sales_031105
mkt_switch_sales_031105
RP_repeat_sales_031105
mkt_repeat_sales_031105
RP_total_sales_031105
mkt_total_sales_031105
上面有201个变量,你再帮我看看,好吗?
作者:
shiyiming
时间:
2005-3-30 11:31
标题:
先读数据,再改变量名
data data0;
length var1-var4 8.;
array var{4} var1-var4;
infile "your_file_name";
input var1-var4;
run;
data _null_;
length name1-name4 $20.;
array name{4} name1-name4;
call execute('proc datasets lib=work nolist;');
call execute('modify data0;');
call execute('rename');
do i=1 to 4;
input name[i];
str='var'||trim(left(i))||'='||name[i];
call execute(str);
end;
call execute(';run;quit;');
stop;
cards;
var101
var102
var203
var30473647356464
;
run;
欢迎光临 SAS中文论坛 (http://mysas.net/forum/)
Powered by Discuz! X3.2