楼主: haierwing
3668 6

[问答] 请问一下如何输出数据集中有相同变量值的观测 [推广有奖]

  • 3关注
  • 0粉丝

讲师

86%

还不是VIP/贵宾

-

威望
0
论坛币
177 个
通用积分
22.4714
学术水平
0 点
热心指数
1 点
信用等级
0 点
经验
28605 点
帖子
266
精华
0
在线时间
461 小时
注册时间
2016-3-16
最后登录
2023-3-24

楼主
haierwing 发表于 2016-4-4 15:36:05 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
例如 输出sashelp.class 中体重相同的观测   
二维码

扫码加我 拉你入群

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

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

关键词:变量值 数据集 SASHELP Shel Help 如何

沙发
孤单的我们 发表于 2016-4-5 09:06:22
  1. proc sql noprint;
  2.         create table want as
  3.         select * from sashelp.class group by weight having count(weight)>1;
  4. quit;
复制代码


或者

  1. proc sort data=sashelp.class out=have;by weight;run;

  2. data want;
  3.         set have;
  4.         by weight;
  5.         if first.weight+last.weight=1;
  6. run;
复制代码


藤椅
fsg1117 发表于 2016-4-5 09:17:13
只输出关键变量相同的观测,程序如下:
data aaa;
input y $ a b c@@;
cards;
a 1 2 3
b 4 5 6
c 1 3 4
a 2 5 7
a 3 1 5
b 4 6 9
a 2 6 8
;
proc sort data=aaa  nouniquekey out=rst;
by y;
run;
proc print data=rst;
run;

板凳
haierwing 发表于 2016-4-5 11:06:03
fsg1117 发表于 2016-4-5 09:17
只输出关键变量相同的观测,程序如下:
data aaa;
input y $ a b c@@;
谢谢了 受教了

报纸
haierwing 发表于 2016-4-5 11:07:01
孤单的我们 发表于 2016-4-5 09:06
或者
恩 谢谢 不过if first.weight+last.weight=1 是什么意思

地板
孤单的我们 发表于 2016-4-5 12:43:28
haierwing 发表于 2016-4-5 11:07
恩 谢谢 不过if first.weight+last.weight=1 是什么意思
first.variable是一个临时变量,by组的第一个观测时为1,反之为0
last.variable也是临时变量,by组的最后一个观测时为1,反之为0
first.weight+last.weight=1写的不严谨,应该用first.weight+last.weight<=1
等价于first.weight+last.weight^=2
排除“如果某weight组只有一个观测时,first.weight同时也是last.weight” 这种情况

7
haierwing 发表于 2016-4-5 17:48:17 来自手机
孤单的我们 发表于 2016-4-5 12:43
first.variable是一个临时变量,by组的第一个观测时为1,反之为0
last.variable也是临时变量,by组的最后 ...
嗯嗯,谢谢

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

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