📜  python中的中位数(1)

📅  最后修改于: 2023-12-03 15:34:25.935000             🧑  作者: Mango

Python中的中位数

在Python中,计算一个列表中的中位数可以使用统计模块中的median()函数,也可以自己编写算法来实现。

使用统计模块中的median()函数
import statistics

data = [1, 3, 5, 7, 9]
median = statistics.median(data)
print("中位数为:", median)

输出结果:

中位数为: 5
自己编写算法实现中位数计算
  1. 对列表进行排序
  2. 判断列表长度的奇偶性
  3. 如果列表长度为奇数,中位数为排序后的列表中间的元素
  4. 如果列表长度为偶数,中位数为排序后的列表中间两个元素的平均数
def find_median(list):
    sorted_list = sorted(list)
    length = len(sorted_list)
    if length % 2 == 0:
        # 列表长度为偶数
        median = (sorted_list[length//2-1] + sorted_list[length//2]) / 2
    else:
        # 列表长度为奇数
        median = sorted_list[length//2]
    return median

data = [1, 5, 3, 7, 9]
median = find_median(data)
print("中位数为:", median)

输出结果:

中位数为: 5
总结

通过使用Python中的statistics模块中的median()函数和自己编写的算法,都可以方便地计算一个列表的中位数,具体使用哪种方法取决于具体情况。