楼主: BYT819
6598 5

[问答] SAS的宏循环中,%do i的那个i在循环中的引用 [推广有奖]

  • 0关注
  • 0粉丝

初中生

66%

还不是VIP/贵宾

-

威望
0
论坛币
9 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
324 点
帖子
12
精华
0
在线时间
14 小时
注册时间
2017-3-21
最后登录
2017-10-16

楼主
BYT819 学生认证  发表于 2017-4-7 18:53:56 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
因为我想做股票的收益率,是用closeprice1-closeprice24这样计算,所以在循环中,我需要用到的不仅是closeprice&i,还需要closeprice&(i-1),但是后面这种格式好像不大对,这个该怎么写呢?
二维码

扫码加我 拉你入群

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

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

关键词:sas的 宏循环 Price Close Lose SAS

回帖推荐

Strive、 发表于4楼  查看完整内容

closeprice%eval(&i-1),宏变量的值只是一个字符串,若要得到数值加减,需要加上%eval()

沙发
BYT819 学生认证  发表于 2017-4-7 20:42:15
求帮助!!!!!!!!!!

藤椅
Soleilmay 发表于 2017-4-7 22:38:45
不太明白你的意思,不過macro之下使用do的方式為
%macro aa;
   %do i=closeprice1 %to closeprice24;
   %end;
%mend aa;
%aa;

板凳
Strive、 发表于 2017-4-8 15:53:15
closeprice%eval(&i-1),宏变量的值只是一个字符串,若要得到数值加减,需要加上%eval()

报纸
BYT819 学生认证  发表于 2017-4-10 14:59:54
Strive、 发表于 2017-4-8 15:53
closeprice%eval(&i-1),宏变量的值只是一个字符串,若要得到数值加减,需要加上%eval()
谢谢能理解我的意思哈哈!

地板
jigouhuan 发表于 2017-10-28 13:40:32
Strive、 发表于 2017-4-8 15:53
closeprice%eval(&i-1),宏变量的值只是一个字符串,若要得到数值加减,需要加上%eval()
想问一下前面已经call symput的变量如何在宏的Do语句中使用 如何前面已经call symput r和nr 那么后面在Do的循环语句中 是直接使用%Do i=symgent('r') %to symgetn('nr'); 吗

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

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