gpt4 book ai didi

Python,numpy 排序数组

转载 作者:太空狗 更新时间:2023-10-29 22:00:08 29 4
gpt4 key购买 nike

我正在使用 numpy 并有一个包含一些值的数组(ndarray 类型)。此阵列的形状 1000x1500。我 reshape 了它

brr = np.reshape(arr, arr.shape[0]*arr.shape[1])

当我尝试

brr.reverse()
AttributeError: ‘numpy.ndarray’ object has no attribute ‘reverse’

得到错误。我如何对这个数组进行排序?

最佳答案

如果你只是想反转它:

brr[:] = brr[::-1]

实际上,这沿轴 0 反转。如果数组有多个轴,您也可以在任何其他轴上反转。

倒序排序:

>>> arr = np.random.random((1000,1500))
>>> brr = np.reshape(arr, arr.shape[0]*arr.shape[1])
>>> brr.sort()
>>> brr = brr[::-1]
>>> brr
array([ 9.99999960e-01, 9.99998167e-01, 9.99998114e-01, ...,
3.79672182e-07, 3.23871190e-07, 8.34517810e-08])

或者,使用 argsort:

>>> arr = np.random.random((1000,1500))
>>> brr = np.reshape(arr, arr.shape[0]*arr.shape[1])
>>> sort_indices = np.argsort(brr)[::-1]
>>> brr[:] = brr[sort_indices]
>>> brr
array([ 9.99999849e-01, 9.99998950e-01, 9.99998762e-01, ...,
1.16993050e-06, 1.68760770e-07, 6.58422260e-08])

关于Python,numpy 排序数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14875248/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com