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