用Python写一个计算中位数
时间: 2024-04-12 09:09:40 浏览: 100
以下是使用Python编写计算中位数的示例代码:
```python
def median(numbers):
"""
计算一个列表的中位数
:param numbers: 输入的列表
:return: 中位数
"""
n = len(numbers)
if n < 1:
return None
if n % 2 == 1:
return sorted(numbers)[n // 2]
else:
return sum(sorted(numbers)[n // 2 - 1:n // 2 + 1]) / 2.0
```
该函数接受一个列表作为参数,计算这个列表的中位数并返回。如果列表为空,则返回None。如果列表长度为奇数,则返回中间的元素。如果列表长度为偶数,则返回中间两个元素的平均值。该函数使用Python内置的sorted函数对列表进行排序,然后根据列表长度的奇偶性来计算中位数。
相关问题
用python代码写一个计算表格数据的中位数
假设表格数据存储在一个列表中,可以使用Python的内置函数sorted()对列表进行排序,然后计算中位数。
以下是示例代码:
```python
#定义一个列表存储表格数据
data = [23, 45, 67, 89, 12, 34, 56, 78, 90]
#将列表按升序排序
data_sorted = sorted(data)
#计算中位数
n = len(data_sorted)
if n % 2 == 0:
median = (data_sorted[n//2-1] + data_sorted[n//2]) / 2
else:
median = data_sorted[n//2]
print("中位数为:", median)
```
输出结果为:中位数为: 56
Python计算中位数
计算中位数可以使用Python内置的statistics模块中的median函数。示例代码如下:
```python
import statistics
data = [1, 2, 3, 4, 5]
median = statistics.median(data)
print(median)
```
输出结果为:
```
3
```
阅读全文