均值方差python函数 python求均方差的函数

用Python怎么算Mean和standard deviation可以用numpy模块实现均值方差python函数:
import numpy
def cal_mean_std(sum_list_in):
# type: (list) - tuple
N = sum_list_in.__len__()
narray = numpy.array(sum_list_in)
sum = narray.sum()
mean = sum / N
narray_dev = narray - mean
narray_dev = narray_dev * narray_dev
sum_dev = narray_dev.sum()
DEV = float(sum_dev) / float(N)
STDEV = numpy.math.sqrt(DEV)
print "mean:", mean, "; DEV:", DEV, "; STDEV:", STDEV
return mean, DEV, STDEV
均值为mean均值方差python函数,方差为DEV均值方差python函数,标准差是STDEV
传入数据是一个list:sum_list_in
在Python库中的static模块用什么函数可以求数据的样本方差标准库中的 statistics 模块提供了一些常见的统计函数,其中计算样本方差的函数为 variance 。
import statistics
data = https://www.04ip.com/post/[1, 2, 3, 4, 5]
var = statistics.variance(data)
print(var)
输入的数据 [1, 2, 3, 4, 5] 的样本方差为 2.5 。
需要注意的是,statistics.variance() 函数计算的是样本方差,而不是总体方差 。如果需要计算总体方差 , 可以使用 statistics.pvariance() 函数 。
用python求数据表中数据的均值与方差以下为代码均值方差python函数:
numstr = input("请输入全部数据:用英文逗号(,)均值方差python函数,中文逗号(均值方差python函数,),\
空格( ) , 制表符(tab键)或换行(请一次性复制过来)中的一种统一分隔数据:")
if "," in numstr:
numlist = numstr.split(",")
elif "," in numstr:
numlist = numstr.split(",")
elif "\t" in numstr:
numlist = numstr.split("\t")
elif "\n" in numstr:
numlist = numstr.split("\n")
elif " " in numstr:
numlist = numstr.split(" ")
else:
numlist = [numstr]
numlist = list(map(lambda x:x.strip(",").strip(",").\
strip("\t").strip("\n").strip(" "), numlist))
for i in numlist.copy():
try:
a = float(i)
except:
numlist.remove(i)
print("已过滤字符串:%s"%i)
#好了,上面很多只是方便用户而已(但还是有一些有用的),主要是下面
numlist = list(map(lambda x:float(x), numlist))#所有字符串转为浮点
print("最终数列:",numlist)#输出最终数列,进行核对
average = sum(numlist)/len(numlist)#用数列和除以出列长度得到平均数
variance = 0#方差,先记为0
for i in numlist:#遍历列表
variance += (i - average) ** 2#反正就是公式对吧,先加进去
variance /= len(numlist)#还是公式,那一长串还得除以一个数列长度
print("均值:%.2f\n方差:%.2f"%(average, variance))#分两行输出
以下为输出效果:
请输入全部数据:用英文逗号(,) , 中文逗号(,),空格( ),制表符(tab键)或换行(请一次性复制过来)中的一种统一分隔数据:38,22,99,10,99,7, 25,,40
已过滤字符串:
最终数列: [38.0, 22.0, 99.0, 10.0, 99.0, 7.0, 25.0, 40.0]
均值:42.50
方差:1181.75
以下为解析:
平均值的思路就是总和除以列表长度,方差的思路就是把所有的(x-均值)2加起来 , 最后再除以一个长度即可 。
本程序的优点:输入时逗号后出现空格与不小心多打逗号等情况都不会出问题 , 可以接受小数,可以先输出最终数列以供核对 。
求一个python程序 , 计算三个数的平均数和方差def fangcha():
a=float(raw_input("请输入a:"))
b=float(raw_input("请输入b:"))
c=float(raw_input("请输入C:"))
d=(a+b+c)/3.0
e=((a-d)**2+(b-d)**2+(c-d)**2)/3.0
print "平均数是:%f方差是:%f" %(d,e)
fangcha()

推荐阅读