楼主: hongxx
5143 2

SAS PDV 的一个工作 [推广有奖]

  • 0关注
  • 5粉丝

讲师

25%

还不是VIP/贵宾

-

威望
0
论坛币
254 个
通用积分
1.8566
学术水平
16 点
热心指数
22 点
信用等级
7 点
经验
3902 点
帖子
255
精华
0
在线时间
613 小时
注册时间
2008-2-29
最后登录
2024-4-17

楼主
hongxx 发表于 2010-3-22 18:10:52 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
sas PDV的工作。
当用input语句时,首先初始化pdv里的所有变量为缺失值(有retain 声明的变量除外),读入datalines的一行数据进入pdv,然后执行data步里的程序。
而用set、merge、update、或者modify语句时,在pdv里的变量值被保留,因而下面的第三个和第四个data程序的结果c表和d表不同。
data a;
  input code $6. name $;
datalines;
600019 你
600018 知
600035 道
run;
data b;
  input code $6. name $ name2 $;
datalines;
699999 我 你
600098 在 吗
600055 等 ?
run;
data c;
   set a;
   if _n_=1 then set b;
run;
data d;
   set a;
   if _n_=1 then input code $6. name $ name2 $;
datalines;
699999 我 你
run;
二维码

扫码加我 拉你入群

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

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

关键词:PDV RETAIN modify update Lines SAS PDV

已有 2 人评分学术水平 热心指数 信用等级 收起 理由
冰雨狼 + 1 + 1 + 1 观点有启发
jsuper1261 + 1 + 1 热心帮助其他会员

总评分: 学术水平 + 2  热心指数 + 2  信用等级 + 1   查看全部评分

本帖被以下文库推荐

沙发
jsuper1261 发表于 2012-9-20 16:28:28
LZ好像是为我提前解答的呀
刚看个程序就遇到这个问题。google一下sas pdv就到这了。哈哈

data percent;
   if _n_=1 then
      set chapt3.summary(keep=cargosum);
   set chapt3.empcount;
   pctemps=numemps/cargosum;
run;

我说这个cargosum后面怎么还能一直运算。原来set能保留pdv里的值呀

藤椅
冰雨狼 发表于 2013-2-26 17:09:04
看完楼主的示例豁然开朗啊!

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

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