楼主: babyface1982
1170 3

请教一个array的问题 [推广有奖]

  • 0关注
  • 0粉丝

初中生

95%

还不是VIP/贵宾

-

威望
0
论坛币
525 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
104 点
帖子
11
精华
0
在线时间
24 小时
注册时间
2010-8-24
最后登录
2015-8-14

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
新手请教: variable X, Y为categorical var, 都可取三个值:‘A‘ ’B' 'C'.

X,Y,Z,D 均为变量名。

array  values {3,6} $10 _temorary_;

values ( sum((X='A') * 1, (X='B') * 2, (X='C')*3 ),
            sum((Y='A') * 1, (Y='B') * 2, (Y='C')*3)  +  (Z*3))  =  D;

请问这是怎么给values 赋值的?没看明白

二维码

扫码加我 拉你入群

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

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

关键词:array ARR Ray Categorical Variable values

回帖推荐

Tigflanker 发表于2楼  查看完整内容

values ( sum((X='A') * 1, (X='B') * 2, (X='C')*3 ), sum((Y='A') * 1, (Y='B') * 2, (Y='C')*3) + (Z*3)) = D; 最外层把D的值传给这个数组。 sum((X='A') * 1, (X='B') * 2, (X='C')*3 ) 为行坐标值。 sum((Y='A') * 1, (Y='B') * 2, (Y='C')*3) + (Z*3) 为列坐标值。 例如其中,sum((Y='A') * 1, (Y='B') * 2, (Y='C')*3) ,(Y='A') * 1为 boolean 判断结果乘以1,相当于ifn(Y='A',1,0) * 1 ...
沙发
Tigflanker 发表于 2014-6-18 11:14:28 |只看作者 |坛友微信交流群
values ( sum((X='A') * 1, (X='B') * 2, (X='C')*3 ),
            sum((Y='A') * 1, (Y='B') * 2, (Y='C')*3)  +  (Z*3))  =  D;

最外层把D的值传给这个数组。

sum((X='A') * 1, (X='B') * 2, (X='C')*3 ) 为行坐标值。

sum((Y='A') * 1, (Y='B') * 2, (Y='C')*3)  +  (Z*3) 为列坐标值。

例如其中,sum((Y='A') * 1, (Y='B') * 2, (Y='C')*3) ,(Y='A') * 1为 boolean 判断结果乘以1,相当于ifn(Y='A',1,0) * 1

例如:X= ‘A’, Y=‘B’,Z=1,D=4

解析为:values ( sum(1 * 1, 0 * 2, 0*3 ), sum(0 * 1, 1 * 2, 0*3)  +  (1*3))  =  4;
             values ( 1, 5)  =  4;
Bye SAS.
若有缘,能重聚。

使用道具

藤椅
babyface1982 发表于 2014-6-19 01:11:00 |只看作者 |坛友微信交流群
Tigflanker 发表于 2014-6-18 11:14
values ( sum((X='A') * 1, (X='B') * 2, (X='C')*3 ),
            sum((Y='A') * 1, (Y='B') * 2, (Y='C ...
非常感谢! 请问我在运行array的时候总是出现这个error:
ERROR: Array subscript out of range at line 262 column 13.
请问这个怎么解决?

使用道具

板凳
Tigflanker 发表于 2014-6-19 12:29:48 |只看作者 |坛友微信交流群
babyface1982 发表于 2014-6-19 01:11
非常感谢! 请问我在运行array的时候总是出现这个error:
ERROR: Array subscript out of range at line ...
检查下你的code,可能在那个地方的数组角标玩儿脱了

建议你在那行ERROR之前设置一个put,把你计算的角标put出看下,调试好了在去掉

使用道具

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

本版微信群
加好友,备注cda
拉您进交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-4-28 18:26