在Python列表中查找中位数

2025年1月5日 | 阅读 5 分钟

引言

在本教程中,我们将学习如何在 Python 中查找列表的中间值。一组元素的中间值是将其分成两部分的那个值,一部分的分数高于平均值,另一部分的分数低于平均值。本教程向我们展示了如何从项目列表中查找值。假设我们有一个元素列表:2、3、3、5、4、7、6、6、7。这个集合的中间值是 4,它是列表中第五大的和第五小的数字。当项目列表被排序时,中间值就是中间的值。在上面的例子中,数据已经经过验证。如果数据未经过分析,我们需要首先分析平均值。然后我们可以减去平均值。如果图上的点数是偶数,那么我们可以通过取给定列表的两个值的平均值来找到中间值。有时,在处理 Python 列表时,我们可能会遇到需要查找列表中间值的问题。这个问题在数学和计算中普遍存在。让我们来谈谈一些做到这一点的方法。

方法 1:使用循环和 '~' 运算符

可以使用上述功能的组合,通过蛮力来完成此任务。在这里,我们列出排序后的元素,并使用“~”运算符的功能从前到后输入名称。同时,进行必要的计算并找到平均值。

程序代码

在这里,我们提供了一个 Python 程序代码来查找列表的中间值。为此,我们正在使用循环和“~”运算符。代码如下:

输出

现在,我们在 Python 中编译上述代码,成功编译后运行它。输出如下:

The given list is: [1, 2, 3, 4, 7]
The median of this given list is: 3.0

方法 2:使用 statistics.median() 函数

这是在 Python 中查找中间值最常见的方法。在这里,我们直接使用内置函数来创建列表的中间值。

程序代码

在这里,我们提供了一个 Python 程序代码来查找列表的中间值。为此,我们正在使用 statistics.median() 函数。代码如下:

输出

现在,我们在 Python 中编译上述代码,成功编译后运行它。输出如下:

The given list is: [4, 5, 8, 9, 10, 17]
The median of this given list is: 8.5

方法 3:使用 heapq.nlargest() 或 heapq.nsmallest() 函数

使用 Python 的 heapq 模块,我们可以使用 nlargest() 或 nsmallest() 函数来查找数字列表的中间值。当我们要处理大量数据并希望以更少的内存使用量找到大型数据的中间值时,此方法很有用。

程序代码

在这里,我们提供了一个 Python 程序代码来查找列表的中间值。为此,我们正在使用 heapq.nlargest() 或 heapq.nsmallest() 函数。代码如下:

输出

现在,我们在 Python 中编译上述代码,成功编译后运行它。输出如下:

The given list is: [1, 2, 3, 4, 7, 10]
The median of this given list is: 3.5

方法 4:通过对列表进行排序

程序代码

在这里,我们提供了一个 Python 程序代码,通过对列表进行排序来查找列表的中间值。代码如下:

输出

现在,我们在 Python 中编译上述代码,成功编译后运行它。输出如下:

The given list is: [1, 2, 3, 4, 7, 10]
The median of this given list is:3.5

程序代码

在这里,我们提供了一个 Python 程序代码,通过对列表进行排序来查找列表的中间值。代码如下:

输出

现在,我们在 Python 中编译上述代码,成功编译后运行它。输出如下:

2.5
3
15
7.7
3.9
17.11

结论

在本教程中,我们将学习如何在 Python 中查找列表的中间值。中间值是按升序或降序排列的数字列表中间的值,它比平均值更能描述数据集。当项目列表被排序时,中间值就是中间的值。在这里,我们提供了一些在 Python 中查找给定列表中间值的方法,并且我们还共享了它们的输入。