SAS - 如何找到 2 或 3 个数字之间的最大值

SAS - How to find the max value between 2 or 3 numbers

我有一个这样的 table :

EMITTER   RECEIVER    DUR      T_DUR       PCT_DUR     PCUM     RANK_123 
123       12          6038      24843       0.243      0.243     1  
(...) 
123       578         256       24843       0.010      0.832    22.5
123       456         256       24843       0.010      0.842    22.5
(...)

对于排名为整数的每种情况,我都有一个 PROC SQL。但是当它像 22,5 时我必须选择一个决胜局,所以我想选择更大的一个。 (此时,仅凭这些变量,你会选择哪个决胜局?)

我试过了:

PROC SQL;
CREATE TABLE work.TESTE_UP_TOP22_123 AS
SELECT EMITTER, PCUM AS TOP22 
FROM WORK.BASE
WHERE RANK_123=22.5 AND MAX(RECEIVER); 
QUIT;

在 "teste_up_top22_123" 中,我想要发射器的值和累积百分比 (PCUM) 的值,其中排名为 22,5,接收器的值更大。 所以,它会留下:

EMITTER TOP22
123     0.832

我该怎么做? 如果我有超过 2 个排名为 22,5 的数字,这是相同的程序吗?

谢谢!

试试这个:

PROC SQL;
CREATE TABLE work.TESTE_UP_TOP22_123 AS
SELECT EMITTER, PCUM AS TOP22 
FROM WORK.BASE
WHERE RANK_123=22.5
Having RECEIVER=MAX(RECEIVER); 
QUIT;