【问题标题】:Is it possible to sort the numpy array in descending order using numpy.sort(), If possible then how? [duplicate]是否可以使用 numpy.sort() 以降序对 numpy 数组进行排序,如果可能,那么如何? [复制]
【发布时间】:2019-08-25 01:36:06
【问题描述】:

我只是想知道如何有效地使用 NumPy sort() 函数对 NumPy 数组进行降序排序。我检查了 NumPy 官方文档和 StackOverflow 问题,但我无法找到如何使用 NumPy sort() 对 NumPy 数组进行降序排序。

For instance:

import numpy as np
arr=np.array([1,5,8,4,5])
arr.sort()
print(arr)

Output:

[1,4,5,5,8]

我想按降序排序,我明白了按升序排序后,我可以像下面这样反转它。

arr.sort()[::-1]

但是它创建了一个新数组,是否可以在不接近此方法的情况下进行降序排序?

【问题讨论】:

  • 基本上你要先反转数组再排序arr[::-1].sort()
  • [::-1]翻转会创建一个视图,而不是一个副本。

标签: python arrays numpy


【解决方案1】:

使用-np.sort(-arr)

import numpy as np
arr=np.array([1,5,8,4,5])
print(-np.sort(-arr))

输出

[8 5 5 4 1]

【讨论】:

    猜你喜欢
    • 2010-11-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-02-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多