python得到一个数组前p个元素,并得到索引

我自己的思路,第一步把矩阵拼接成一维数组,然后用argsort得到排序,然后把一维坐标换算成二维的

numpy 矩阵形状调整:拉伸、变成一维数组:

#将多维数组变成 1维数组 a=b.ravel()

argsort,得到排序坐标https://www.cnblogs.com/yyxf1413/p/6253995.html

由于在程序中遇到了类似于np.argsort()[num]的形式,一直看不明白,就自己去python环境自己试了下:

ps:这里的num的绝对值小于等于x中元素的个数

当num>=0时,np.argsort()[num]就可以理解为y[num];

当num<0时,np.argsort()[num]就是把数组y的元素反向输出,例如np.argsort()[-1]即输出x中最大值对应的index,np.argsort()[-2]即输出x中第二大值对应的index,依此类推。

坐标变换成二维:

Python 一维列表(list)平均分割为二维列表(不是这个):http://blog.topspeedsnail.com/archives/1066

自己写吧

猜你喜欢

转载自www.cnblogs.com/wanghaolu/p/9880075.html
今日推荐