楼主: 肝贝
1567 2

[问答] 又见modify [推广有奖]

  • 12关注
  • 1粉丝

幸儿

博士生

48%

还不是VIP/贵宾

-

威望
0
论坛币
675 个
通用积分
1.0042
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
294 点
帖子
192
精华
0
在线时间
264 小时
注册时间
2013-11-9
最后登录
2019-11-19

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
各位大神好,sas菜菜在到modify匹配访问时,有这样几句话看不明白,求大神指点:
"对modify语句不能重复运行测试通过的代码,否则在某些情况下数据集数据会不断更新而不被发觉……避免该风险的简单而有效的解决方法是寻找到产生主数据集所在的原始代码并运行。在此基础上再次运行modify语句代码就不会出现问题。"
菜菜不理解,什么叫“重复运行测试通过的代码”,还有什么是“产生主数据集所在的原始代码”??
求大神指点一二~~

二维码

扫码加我 拉你入群

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

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

关键词:modify DIF Mod ODI 解决方法 modify

I'll never let go.
沙发
zhengbo8 发表于 2014-4-12 00:32:44 |只看作者 |坛友微信交流群
重复运行这两个程序,比较结果。

程序一:

  1. data a;
  2.     input id $ num;
  3. datalines;
  4. a 1
  5. a 2
  6. b 3
  7. c 4
  8. d 5
  9. ;

  10. data b;
  11.     input id $ num;
  12. datalines;
  13. a 11
  14. ;

  15. data a;
  16.         modify a b;
  17.         by id ;
  18. run;
  19.    

  20. data a;
  21.         set a;
  22.         if num=11 then delete;
  23. run;
复制代码


程序二:


下面代码只运行一次。
  1. data a;
  2.     input id $ num;
  3. datalines;
  4. a 1
  5. a 2
  6. b 3
  7. c 4
  8. d 5
  9. ;

  10. data b;
  11.     input id $ num;
  12. datalines;
  13. a 11
  14. ;
复制代码

下面代码重复运行二次,比较结果。

  1. data b;
  2.     input id $ num;
  3. datalines;
  4. a 11
  5. ;

  6. data a;
  7.         modify a b;
  8.         by id ;
  9. run;
  10.    

  11. data a;
  12.         set a;
  13.         if num=11 then delete;
  14. run;
复制代码

使用道具

藤椅
肝贝 发表于 2014-4-12 23:56:00 |只看作者 |坛友微信交流群
zhengbo8 发表于 2014-4-12 00:32
重复运行这两个程序,比较结果。

程序一:
程序一里主数据集和更新数据集是同时产生的,程序二里的更新数据集提前已经产生了,所以在运行modify的时候会更新两次??是这样理解吗??数据集结果是一样的啊??菜菜愚钝,不能领悟要义,还请大神费心,再多给提示
I'll never let go.

使用道具

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

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

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

GMT+8, 2024-4-28 16:48