📅  最后修改于: 2023-12-03 15:41:39.044000             🧑  作者: Mango
有时候我们需要计算一个扁平的 NumPy 数组的中位数(例如,一个一级数组,或一个扁平的二维数组)。这个问题的解决方案比较简单,我们可以借助 NumPy 库的 median()
函数来计算。
以下是计算扁平 NumPy 数组中位数的示例代码:
import numpy as np
# 创建一个一级数组
arr = np.array([5, 2, 1, 3, 4])
# 计算中位数
arr_median = np.median(arr)
# 输出结果
print("数组 arr 的中位数为:", arr_median)
# 创建一个二维数组
arr_2d = np.array([[1, 5, 2], [3, 4, 6]])
# 计算中位数
arr_2d_median = np.median(arr_2d)
# 输出结果
print("数组 arr_2d 的中位数为:", arr_2d_median)
在上面的代码中,我们首先创建了一个一级数组 arr
,以及一个扁平的二维数组 arr_2d
。然后我们分别使用 np.median()
函数计算了这两个数组的中位数,并将结果保存在 arr_median
和 arr_2d_median
变量中。最后,我们分别输出了这两个数组的中位数。
需要注意的是,np.median()
函数可以计算多维数组的中位数,但在计算时会将其展平为一维数组。如果你需要计算二维数组每行或每列的中位数,你可以用 axis
参数指定计算的轴,例如:
# 计算二维数组每行的中位数
arr_2d_row_median = np.median(arr_2d, axis=1)
# 计算二维数组每列的中位数
arr_2d_col_median = np.median(arr_2d, axis=0)
以上代码中,我们分别使用 axis=1
和 axis=0
参数指定计算每行和每列的中位数,并将结果保存在 arr_2d_row_median
和 arr_2d_col_median
变量中。
综上所述,计算扁平 NumPy 数组的中位数可以借助 NumPy 库的 np.median()
函数来解决,这个函数支持多维数组,并可以计算每行、每列的中位数。