大家好,欢迎来到IT知识分享网。
一个数列的平均数的定义为,所有数值求和再除以数列长度
中位数定义为,将一个数列排序后位于中间的数值(数列长度为奇数时,取正中间的数,长度为偶数时,去中间的两个数的平均)
众数定义为,在一个数列中,出现次数最多的那个数值。
python代码实现:
#计算平均数
def averagenum(num):
nsum = 0
for i in range(len(num)):
nsum += num[i]
return nsum / len(num)
#计算中位数
def mediannum(num):
listnum = [num[i] for i in range(len(num))]
listnum.sort()
lnum = len(num)
if lnum % 2 == 1:
i = int((lnum + 1) / 2)-1
return listnum[i]
else:
i = int(lnum / 2)-1
return (listnum[i] + listnum[i + 1]) / 2
#计算众数
def publicnum(num, d = 0):
dictnum = {}
for i in range(len(num)):
if num[i] in dictnum.keys():
dictnum[num[i]] += 1
else:
dictnum.setdefault(num[i], 1)
maxnum = 0
maxkey = 0
for k, v in dictnum.items():
if v > maxnum:
maxnum = v
maxkey = k
return maxkey
定义:
a = [1, 1 , 2, 5, 7, 9, 9, 9, 20, 7, 9, 55]
测试:
In [1]:averagenum(a)
Out[1]:
11.166666666666666
In [2]:mediannum(a)
Out[2]:
8.0
In [3]:publicnum(a)
Out[3]:
9
运行结果正确!
(代码是基于python3的)
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/21512.html