gpt4 book ai didi

详解Python如何获取列表(List)的中位数

转载 作者:qq735679552 更新时间:2022-09-27 22:32:09 43 4
gpt4 key购买 nike

CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.

这篇CFSDN的博客文章详解Python如何获取列表(List)的中位数由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.

前言 。

中位数是一个可将数值集合划分为相等的上下两部分的一个数值。如果列表数据的个数是奇数,则列表中间那个数据就是列表数据的中位数;如果列表数据的个数是偶数,则列表中间那2个数据的算术平均值就是列表数据的中位数。在这个任务里,你将得到一个含有自然数的非空数组(X)。你必须把它分成上下两部分,找到中位数.

输入: 一个作为数组的整数(int)列表(list)的.

输出: 数组的中位数(int, float). 。

示例 。

?
1
2
3
4
get_median([ 1 , 2 , 3 , 4 , 5 ]) = = 3
get_median([ 3 , 1 , 2 , 5 , 3 ]) = = 3
get_median([ 1 , 300 , 2 , 200 , 1 ]) = = 2
get_median([ 3 , 6 , 20 , 99 , 10 , 15 ]) = = 12.5
 

如何使用: 中位数在概率论和统计学中得到应用,它偏态分布中有显著的价值。例如:我们想从一组数据中知道人们的平均财富 -- 100人一个月收入100美元,10人一个月收入1,000,000美元。如果我们算平均值,得到的是91000美元。这是一个完全没有向我们展示真实情况的奇怪的值。所以在这种情况下,中位数会给我们更有用的值和较好的描述.

前提: 1 < len(data) ≤ 1000 all(0 ≤ x < 10 ** 6 for x in data) 。

普通方法:

对列表进行排序,针对列表长度是奇数还是偶数的不同情况,计算中位数.

?
1
2
3
4
5
6
7
8
9
10
def get_median(data):
    data = sorted (data)
    size = len (data)
    if size % 2 = = 0 : # 判断列表长度为偶数
     median = (data[size / / 2 ] + data[size / / 2 - 1 ]) / 2
     data[ 0 ] = median
    if size % 2 = = 1 : # 判断列表长度为奇数
     median = data[(size - 1 ) / / 2 ]
     data[ 0 ] = median
    return data[ 0 ]

最佳方法:

这个解决方法非常巧妙,它利用了取反数和为1的特性,通过列表负索引来获得列表中位数.

对 return (data[half] + data[~half]) / 2 的解释:

详解Python如何获取列表(List)的中位数

排序后得到序列[1,2,3,4,5,6],其列表长度为偶数,中位数由列表中间两位元素3(索引为2),4(索引为3)决定。而元素4的负索引为-3,正好是索引2的取反数.

排序后得到序列[1,2,3,4,5],其列表长度为奇数,中位数由列表中间元素3(索引为2,负索引为-3)决定。仍然符合代码。  。

?
1
2
3
4
def get_median(data):
data.sort()
half = len (data) / / 2
return (data[half] + data[~half]) / 2

总结 。

以上就是Python实现获取列表的中位数的全部内容,希望本文的内容对大家学习python能有所帮助.

最后此篇关于详解Python如何获取列表(List)的中位数的文章就讲到这里了,如果你想了解更多关于详解Python如何获取列表(List)的中位数的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。

43 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com