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

本文详细介绍使用NumPy进行矩阵操作的方法,包括如何将多维数组转换为一维数组,利用argsort函数获取排序后的索引,以及如何将一维坐标转换回二维坐标。适用于希望深入了解NumPy矩阵操作及排序技巧的读者。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

我自己的思路,第一步把矩阵拼接成一维数组,然后用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

 

自己写吧

转载于:https://www.cnblogs.com/wanghaolu/p/9880075.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值