楼主: jjpanda1111
1512 5

程序出错,请大家帮助看看 [推广有奖]

  • 5关注
  • 0粉丝

已卖:4284份资源

教授

31%

还不是VIP/贵宾

-

威望
0
论坛币
8542 个
通用积分
155.4125
学术水平
39 点
热心指数
43 点
信用等级
38 点
经验
23802 点
帖子
750
精华
0
在线时间
1579 小时
注册时间
2006-8-4
最后登录
2026-1-20

楼主
jjpanda1111 发表于 2009-6-15 18:50:07 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
data CGDATA.stockshare;
    set CGDATA.computationaldata;
    keep _col0 _col1 _col4 _col5-_col11;
run;

data CGDATA.stockshare(drop=i);
   set CGDATA.stockshare;
   array stockshare{*} _col5-_col11;
   array con20{*} con20_2002-con20_2008;
   array con2050{*} con2050_2002-con2050_2008;
   array con50{*} con50_2002-con50_2008;
     do i=1 to 7;
           if stockshare{i} < 0.2 then con20{i}=1;else con20{i}=0;
     if stockshare{i} >= 0.2 and stockshare{i} <= 0.5 then con2050{i}=1;else con2050{i}=0;
     if stockshare{i} > 0.5 then con50{i}=1;else con50{i}=0;
  end;
run;
程序的目的是:构建虚拟变量
                         1. 2002-2008年度 ,持股比例小于0.2时,con20_2002-con20_2008均为1,否则为0
                         2. 2002-2008年度 ,持股比例在0.2--0.5之间时,con2050_2002-con2050_2008均为1,否则为0
                         3. 2002-2008年度 ,持股比例大于0.5时,con50_2002-con50_2008均为1,否则为0

但是程序运行结果为:
                         只有符合第1和第3条件,持股比例在持股比例在0.2--0.5之间时,con2050_2002-con2050_2008仍然全为0。
请大家帮助看看,谢谢!
二维码

扫码加我 拉你入群

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

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

关键词:Computation Stocks 2008年度 Comput share 程序

回帖推荐

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

1# jjpanda1111 try the follows 1. to initialize array con20, con2050, con50 to 0 at the array definition or before do loop. 2. remove else con20{i}=0; else con2050{i}=0; else con50{i}=0;

本帖被以下文库推荐

沙发
yongyitian 发表于 2009-6-15 23:20:32
1# jjpanda1111
try the follows
1. to initialize array con20, con2050, con50 to 0 at the array definition or before do loop.
2. remove
   else con20{i}=0;
   else con2050{i}=0;
   else con50{i}=0;
已有 1 人评分经验 论坛币 收起 理由
bakoll + 3 + 3 精彩帖子

总评分: 经验 + 3  论坛币 + 3   查看全部评分

藤椅
jjpanda1111 发表于 2009-6-16 02:03:02
谢谢楼上的同学!

板凳
viterbi 发表于 2009-6-16 13:33:42
这个不会,帮顶啦

报纸
jie1987 在职认证  发表于 2009-6-27 13:32:04
顶一下,呵呵

地板
爱萌 发表于 2009-6-28 11:05:18
用if-then else if
或者用 select when otherwise
可以比较好的解决你的问题,
而不是简单的if -then
最恨对我说谎或欺骗我的人

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

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2026-1-21 16:02