楼主: 楚颜错
2355 3

计算组内差异率 [推广有奖]

  • 0关注
  • 3粉丝

博士生

42%

还不是VIP/贵宾

-

威望
0
论坛币
1695 个
通用积分
4.5900
学术水平
2 点
热心指数
2 点
信用等级
0 点
经验
11411 点
帖子
54
精华
0
在线时间
461 小时
注册时间
2012-5-10
最后登录
2023-9-17

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
各位大神,我想计算在每个组号内,差异小于30%的组,求助~!如下所示,第3组的两个数据差值比率=(38573.22-30330.71)/30330.71=27.18%,输出3

组号

均数

3

30330.71

3

38573.22

4

18903.86

4

29965.84

5

10988.00

5

22843.31

6

6631.87

6

10502.51

6

16536.48



二维码

扫码加我 拉你入群

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

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


回帖推荐

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

你举的例子组3,刚好只有2个数。我的理解你是要求任何一组内的最大数和最小数的差值比率,是吗? 以你的数据为例: 首先,proc sort 排序,求出 first.group (最小)和 last.group(最大): data test1; input group $ amount 8.2; cards; 3 30330.71 3 38573.22 4 18903.86 4 29965.84 5 10988.00 5 22843.31 6 6631.87 6 10502.51 6 16536.48 ; proc sort; by group amount; run; data test2; se ...
沙发
mich_ard 发表于 2016-12-12 03:15:00 |只看作者 |坛友微信交流群
你举的例子组3,刚好只有2个数。我的理解你是要求任何一组内的最大数和最小数的差值比率,是吗?

以你的数据为例:

首先,proc sort 排序,求出 first.group (最小)和 last.group(最大):

data test1;
input group $  amount 8.2;
cards;
3 30330.71
3 38573.22
4 18903.86
4 29965.84
5 10988.00
5 22843.31
6 6631.87
6 10502.51
6 16536.48
;
proc sort;
by group amount;
run;

data test2;
set test1;
by group;
if first.group or last.group ;
run;

之后的处理其实有两种选择,都需要用到 lag 语句,以便把first.group (充当分母)的值 “移到” 和 last.group 同一行:

option 1,

data test3;
set test2;
by group;
XXX = (amount-lag(amount))/lag(amount);
if last.group and XXX LT 0.3 then output = 3;
drop XXX;
run;

option 2 (另外,要用到 dif 语句),

data test4;
set test2;
by group;
YYY = dif(amount) / lag(amount);
if last.group and YYY LT 0.3 then output = 3;
drop YYY;
run;

           Obs    group     amount     output
           1       3      30330.71       .
           2       3      38573.22       3
           3       4      18903.86       .
           4       4      29965.84       .
           5       5      10988.00       .
           6       5      22843.31       .
           7       6       6631.87       .
           8       6      16536.48       .



使用道具

藤椅
zhaok71 发表于 2016-12-26 06:22:12 |只看作者 |坛友微信交流群
赞一个!!!!!!!!!

使用道具

板凳
mich_ard 发表于 2016-12-29 06:44:04 |只看作者 |坛友微信交流群
mich_ard 发表于 2016-12-12 03:15
你举的例子组3,刚好只有2个数。我的理解你是要求任何一组内的最大数和最小数的差值比率,是吗?

以你的 ...
做了一点修改。

使用道具

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

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

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

GMT+8, 2024-4-25 07:56