python - numpy.argpartition 文档不够清楚
问题描述
我试图numpy.argpartition
通过阅读它的文档来理解它,但我仍然感到困惑。
在文档中,据说
它返回一个索引数组,这些索引以分区顺序沿给定轴索引数据。
我在这句话中没有得到的是“按分区顺序”。
此外,当我使用np.argpartition
示例时,我没有得到任何合乎逻辑的东西(对我来说)。
>>> a = np.array([352, 538, 215, 400, 631, 498, 586, 731])
>>> np.argpartition(a, 2)
array([2, 0, 3, 1, 4, 5, 6, 7])
>>> np.argpartition(a, 3)
array([2, 0, 3, 5, 1, 4, 6, 7])
我期望的是一个数组,其中包含数组 a 的排序值的索引。
谁能解释/澄清如何np.argpartition
工作?
解决方案
In [163]: np.argpartition(a, 3)
Out[163]: array([2, 0, 3, 5, 1, 4, 6, 7])
In [164]: a[_]
Out[164]: array([215, 352, 400, 498, 538, 631, 586, 731])
In [165]: np.partition(a,3)
Out[165]: array([215, 352, 400, 498, 538, 631, 586, 731])
在 164 和 165 中,400 左侧的所有内容都较小,右侧的所有内容都较大。
推荐阅读
- angular - Angular 2:登录后如何将用户重定向到以前的 URL
- android - 无法解析符号“?selectableItemBackgroundBorderless”
- node.js - 节点 Koa cors 不工作
- react-native - 我无法使用 react-native 地图在我的 android 上查看地图
- git - 从 git 中的提交消息中获取文件名
- macos - 通过网络设置两机内核调试
- regex - 创建一个“除特定字符之外的所有内容”正则表达式
- reactjs - 在 MUI 中更改 TextField 字体颜色?
- vb.net - 1 行 Datagridview 上的 ArgumentOutOfRangeException
- unix - 在 Unix 中更改文件名中已有数字的多个文件名