📅  最后修改于: 2023-12-03 15:34:51.946000             🧑  作者: Mango
scipy.stats.nanmedian()
是scipy库中的一个函数,用于计算给定数组的中位数,跳过NaN值。
中位数是指一个数组的中间值,即把数列按从小到大的顺序排列,中间那个数就是中位数。如果数组有偶数个数,中位数就是中间两个数的平均值。
scipy.stats.nanmedian(a, axis=None, out=None, overwrite_input=False, keepdims=False)
a
: 输入的数组axis
: 需要沿着它计算中位数的轴,如果不设置,则计算整个数组的中位数out
: 结果被放置的数组overwrite_input
: 如果为True,则允许使用和输入数组相同的存储器将结果放回,这样可以节约存储器keepdims
: 如果设置为True,则将输出数组的维度设置为输入数组的维度。结果数组中的轴被缩小为长度为1。返回给定数组的中位数值。
>>> import numpy as np
>>> from scipy import stats
>>> arr = np.array([1, 3, np.NaN, 5, 7])
>>> stats.nanmedian(arr)
5.0
>>> arr1 = np.array([[1, 2, 3], [np.NaN, 5, 6], [7, 8, 9]])
>>> stats.nanmedian(arr1)
5.0
>>> stats.nanmedian(arr1, axis=0)
array([4., 5., 6.])
>>> stats.nanmedian(arr1, axis=1)
array([2., 5., 8.])