为什么sorted()不对包含nan值的数组进行排序?

时间:2018-05-31 23:04:58

标签: python numpy

似乎当Numpy数组中包含“nan”值时,无法通过sorted()对数组进行排序。这是一个例子:

import numpy as np

values = np.array([float('nan'),2,float('nan'),1],dtype=float)
valuesSorted = sorted(values)
print(valuesSorted)

输出为[nan, 2.0, nan, 1.0]。而如果您使用相同的代码对[2,1]进行排序,则输出为[1.0,2.0]

或者,如果您使用values.sort()

import numpy as np

values = np.array([float('nan'),2,float('nan'),1],dtype=float)
values.sort()
print(values)

输出为:[ 1. 2. nan nan],表示sort()可以对包含nan值的数组进行排序。

我的问题是:为什么函数sorted()不对包含nan值的数组进行排序?是否可以使用sorted()对包含nan值的数组进行排序?

0 个答案:

没有答案