选择我的表中 10 个最大值<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />你好,
我想提取表中的十个最大值。
我能怎么做 ?
有相关的脚本吗?
感谢您的帮助 !
回复:选择我的表中 10 个最大值非常感谢PMroz和MS!
回复:选择我的表中 10 个最大值根据目标的不同,最初的问题可以用不同的方式来回答。
PMroz 代码成功选择了 10 个顶层的所有行(这意味着如果多行具有相同的值,则选择了超过 10 行)。
如果您想恰好选择具有最高值的十行(并且可能将最低的前十个级别的绑定值留在后面),可以使用以下方法:
dt =打开( “$sample_data\波段数据.jmp” ) ;
n =恩罗( dt ) ;
dt <<选择行(洛克(排行( :湿度[ 1 :: n ]) >= n - 10 )) ;
这是一个替代方案,它选择与前 10 行相对应的行(大致)百分比,但这里包括具有前 10 行中最低值的并列行:
dt <<选择地点( :湿度>=分位数( :湿度, 1 - 10 / n )) ;
这三种方法都会产生不同的结果,但根据具体情况,每种方法都可能是正确的。
回复:选择我的表中 10 个最大值有两种方法可以做到这一点:
简单的方法:
dt <<选择地点( :湿度>=湿度_mtx [ 10 ]) ;
其他方式:
dt <<选择地点(包含(湿度_mtx [ 1 :: 10 ] , :湿度)) ;
回复:选择我的表中 10 个最大值谢谢 !
我在此列表中有十个值,但我现在想在表中选择在此列表中具有值的行:
我尝试过: mytable<< SelectWhere(values_mtx);
但它不起作用
回复:选择我的表中 10 个最大值这是使用 summarise 命令执行此操作的一种方法。Summarize 生成唯一值的列表,但它们是字符串列表。
dt =打开( “$sample_data\bands 数据.jmp” ) ;
总结(湿度列表=经过( :湿度)) ;
n =尼特姆斯(湿度列表) ;
湿度_mtx =指数( 1 , n ) ;
为了(我= 1 ,我<= n ,我++,
湿度_mtx [我] =编号(湿度列表[我]) ;
) ;
湿度_mtx =降序排序(湿度_mtx ) ;
打印(湿度_mtx [ 1 :: 10 ]) ;
[ 105 , 103 , 100 , 98 , 96 , 95 , 94 , 93 , 92 , 91 ]