【问题标题】:Sort data before using numpy.median在使用 numpy.median 之前对数据进行排序
【发布时间】:2023-03-19 04:46:01
【问题描述】:

我正在使用 Python 测量数据样本的中位数和百分位数。

import numpy as np
xmedian=np.median(data)
x25=np.percentile(data, 25)
x75=np.percentile(data, 75)

在测量中位数之前,我是否必须对我的数据使用 np.sort() 函数?

【问题讨论】:

    标签: python numpy median percentile


    【解决方案1】:

    根据numpy.median 的文档,您不必在将数据提供给函数之前手动对数据进行排序,因为它在内部执行此操作。查看函数的源代码并尝试了解其工作原理实际上是一种很好的做法。

    示例,表明无需预先排序:

    In [1]: import numpy as np
    
    In [2]: data = np.array([[ 10, 23,  1,  4,  5],
       ...:                  [  2, 12,  5, 22, 14]])
    
    In [3]: median = np.median(data)  # Median of unsorted data
    
    In [4]: median
    Out[4]: 7.5
    
    In [5]: data.sort()  # Sorting data
    
    In [6]: median_sorted = np.median(data.ravel())  # Median of the flattened array
    
    In [7]: median_sorted
    Out[7]: 7.5
    
    In [8]: median == median_sorted  # Check that they are equal
    Out[8]: True
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-04-29
      • 1970-01-01
      • 2013-08-20
      • 1970-01-01
      相关资源
      最近更新 更多