楼主: aaronsong23
1113 3

在线等~~请问大侠指出这个程序的错误指出~~~谢谢了! [推广有奖]

  • 4关注
  • 0粉丝

本科生

9%

还不是VIP/贵宾

-

威望
0
论坛币
1004 个
通用积分
1.2000
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
640 点
帖子
36
精华
0
在线时间
72 小时
注册时间
2013-10-14
最后登录
2025-6-28

楼主
aaronsong23 发表于 2014-1-2 14:00:07 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
写了一段程序,想实现的功能是:如果城市是昆明并且B07(老的错乱的编码变量)的变量=0,那么新变量B07new对应=1,
以此类推,但是运行程序sas没有报错,但是却没有执行所有的if else 语句,打印出来的b07new 都是和b07一样的。请问这是咋回事儿呢?所有的变量都是字符型的。先谢过了!!

data rec1;/*更改错误编码*/
set c1;
b07new=b07;
   if city="昆明"and b07="0" then b07new="1";
   else if city="昆明" and b07="1" then b07new="2";
   else if city="昆明" and b07="3" then b07new="3";
   else if city="昆明"and b07="4" then b07new="4";
proc print data=rec1;
   var b07new;
run;
二维码

扫码加我 拉你入群

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

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

关键词:在线等 print else Then City 程序

沙发
heperwong 在职认证  发表于 2014-1-2 15:49:57
if 前面的else都不要。

藤椅
pigchenjh 发表于 2014-1-2 15:53:41
else 后面不要加if了

板凳
zw612003 发表于 2014-1-2 17:32:49
data new;
set SASHELP.CARS;
format Type_new $9.;
Type_new  = Type;
if Make = 'Acura' and Type = 'Sedan' then Type_new = 'Sedan1';
else if Make = 'Acura' and Type = 'SUV' then Type_new = 'SUV1';
else if Make = 'Acura' and Type = 'Sports' then Type_new = 'Sports1';
proc print data=new(where=(Make = 'Acura'));
   var Type Type_new;
run;

这段运行没有问题啊,lz你给几个范例吧。打印出来的b07new 都是和b07一样的原因是不是因为不是昆明的b07啊?

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

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