请编写一个函数,该函数接收一个列表参数,返回该列表的均值方差、标准差,最后在主程序中测试该函数。
统计学里最基本的概念就是样本的均值、方差、标准差。首先给定一个含有N个样本的集合,下面给出这些概念的公式描述。
均值表示的信息是有限的,而标准差描述的是样本集合的离散程度。
以两个集合[0, 8, 12, 20]和[8, 9, 11, 12]为例,它们的均值都是10,但显然两个集合的差别是很大的,计算两者的标准差。前者是8.3,后者是1.8,显然后者较为集中,故其标准差较小,标准差描述的就是这种散布度。之所以除以n-1,而不是n,是因为这样能以较小的样本及更好的逼近总体的标准差,即统计上所谓的‘无偏估计’,而方差仅仅是标准差的平方。
#请编写一个函数,该函数接收一个列表参数,author:@sunhao
#返回该列表的均值方差、标准差,最后在主程序中测试该函数。
def tongji():
sun=0
for i in arr:
sun=sun+i
junshu=sun/len(arr)#根据公式求出平均值
print("该数组的平均数为:",junshu)
sum = 0
for i in arr:
sum=sum+(i-junshu)**2#借助循环对于公式中的数字进行求和
fc=sum/(len(arr)-1)
bc=fc**0.5
print("该数组的标准差为:",bc)
print("该数组的方差为:",fc)
return 0
arr=[8,9,6,88,5]
tongji()
#也可以借助numpy中的函数方法进行计算
'''
import numpy as np
a = [5, 6, 16, 9]
print(np.mean(a))
var = np.var(a)
print(var)
b = list(input("请您输入您的参数列表:"))
arr=[]
for i in b:
arr.append(int(i))
print("您输入的参数列表为",arr)'''