楼主: 小鳄鱼a
2359 14

求助帖子 [推广有奖]

  • 6关注
  • 10粉丝

已卖:280份资源

学科带头人

3%

还不是VIP/贵宾

-

威望
0
论坛币
125 个
通用积分
0.0040
学术水平
40 点
热心指数
45 点
信用等级
43 点
经验
32801 点
帖子
1185
精华
0
在线时间
1539 小时
注册时间
2009-7-16
最后登录
2018-10-5

楼主
小鳄鱼a 发表于 2014-10-5 17:31:07 |AI写论文
100论坛币
%macro genfact(index=,delim=%str(,));



%let i=1;
%do %while(%scan(%quote(&index),&i,%quote(&delim)) ne );
%let Nindex=%scan(%quote(&index),&i,%quote(&delim));



%let i=%eval(&i+1);
%end;


%mend;

%genfact(index=%str(fratio54,fratio5b4,analystz10b,mrsquare3b,cashvot14,cashvot1b4,gsvot54,turnr3 ,profit54 ),
delim=%str(,));

这个是分别调用fratio54,fratio5b4,analystz10b,mrsquare3b,cashvot14,cashvot1b4,gsvot54,turnr3 ,profit54。



关键词:求助帖 Rsquare Analyst Analys Profit 字符串 如何

沙发
farmman60 发表于 2014-10-5 17:31:08
小鳄鱼a 发表于 2014-10-15 15:43
宏变量是不区分大小写的吗
  1. No, SAS is not case-sensitive.
复制代码

藤椅
工藤新新 发表于 2014-10-5 18:03:08
相当好啊                                                                        
                                       
                                                     
                                                     
                                             
                                                                 
                                                                                 

板凳
小鳄鱼a 发表于 2014-10-12 08:16:54
help!!!!!!!!!

报纸
小鳄鱼a 发表于 2014-10-13 21:48:39
都不会啊   

地板
farmman60 发表于 2014-10-14 01:50:49
  1. %macro genfact(index=,delim=);

  2. %let i=1;
  3. %do %while(%scan(&index,&i,&delim) ne );
  4. %let Nindex=%scan(&index,&i,&delim);

  5.    

  6. %let i=%eval(&i+1);
  7. %end;


  8. %mend;

  9. %genfact(index=%str(fratio54,fratio5b4,analystz10b,mrsquare3b,cashvot14,cashvot1b4,gsvot54,turnr3 ,profit54 ),delim=%str(,));
复制代码

7
小鳄鱼a 发表于 2014-10-14 11:28:15
farmman60 发表于 2014-10-14 01:50
把我的程序又写了一遍  什么意思啊   

8
小鳄鱼a 发表于 2014-10-14 11:30:48
farmman60 发表于 2014-10-14 01:50
我是想能不能有%genfact(index=%str((fratio54,fratio5b4,analystz10b,mrsquare3b),(analystz10b,mrsquare3b,cashvot14,cashvot1b4,gsvot54,turnr3 cashvot14,cashvot1b4,gsvot54,turnr3 ,profit54),(cashvot1b4,gsvot54,turnr3 cashvot14,cashvot1b4,gsvot54,turnr3 ,profit54) ),delim=%str(,));之类的

9
farmman60 发表于 2014-10-14 21:26:13
小鳄鱼a 发表于 2014-10-14 11:30
我是想能不能有%genfact(index=%str((fratio54,fratio5b4,analystz10b,mrsquare3b),(analystz10b,mrsq ...
  1. %macro genfact(index=,delim=);
  2. %let i=1;
  3. %do %while(%scan(&index,&i,&delim) ne );
  4. %let Nindex=%scan(&index,&i,&delim);

  5. %put &Nindex;

  6. %let i=%eval(&i+1);
  7. %end;
  8. %mend;


  9. %genfact(index=%str((fratio54,fratio5b4,analystz10b,mrsquare3b),
  10. (analystz10b,mrsquare3b,cashvot14,cashvot1b4,gsvot54,turnr3 cashvot14,cashvot1b4,gsvot54,turnr3 ,profit54),
  11. (cashvot1b4,gsvot54,turnr3 cashvot14,cashvot1b4,gsvot54,turnr3 ,profit54) ),delim=%str(,()));
复制代码

10
小鳄鱼a 发表于 2014-10-14 23:19:45
farmman60 发表于 2014-10-14 21:26
这个只是从字符串的层面调用吧,我是第一步把字符串当做一个宏变量,第二部然后再把该字符串里面的字符当做宏变量

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2025-12-30 10:58