python-3.x - Numpy根据百分位数删除二维数组的元素
问题描述
我有一个 numpy 数组,其列是价格值,行是日期。对于每一列,我想删除极值(X% 最低和 X% 最高值)。
我可以通过计算百分位数然后应用逻辑运算符来实现这一点:
idx_kd = np.logical_and(values>np.percentile(values,x) , values<np.percentile(values,100-x))
是否有自动“剪辑”数据的内置功能?
解决方案
事实上,np.clip
,但它似乎要求其界限为绝对数字而不是百分位数,并且它不会删除异常值,而是将它们分别设置为最小值或最大值。
推荐阅读
- unity3d - 完成游戏后无法再次连接两个玩家自动谷歌玩游戏服务?
- sql - 将 SQL Server 动态游标转换为 Oracle
- php - 如果输入字段为空,则禁用提交按钮
- sql - 更新链接表'???' 失败的
- sql - 如何在 JOIN 语句中查找导致行重复的列?
- assembly-loading - 如何在不添加到 GAC 的情况下将程序集加载到默认加载上下文中?
- android - 如何从外部库中排除 java 文件?
- java - 如何使用 adb 端口转发?
- javascript - 如何从 Object Jasvscript 中删除属性?
- javascript - 如何按键合并对象数组?