A. python 怎麼求標准正態分布某個值
示例:
1、from numpy import *;
2、def rand_Matrix():
3、randArr=random.randn(2,3);
4、randMat=mat(randArr);
5、return randMat;
一種結果如下:
1、matrix([[ 0.3150869 , -0.02041996, -0.15361071],
2、[-0.75507988, 0.80393683, -0.31790917]])
(1)python計算方差擴展閱讀
Python正態分布概率計算方法:
def st_norm(u):
'''標准正態分布'''
import math
x=abs(u)/math.sqrt(2)
T=(0.0705230784,0.0422820123,0.0092705272,
0.0001520143,0.0002765672,0.0000430638)
E=1-pow((1+sum([a*pow(x,(i+1))
for i,a in enumerate(T)])),-16)
p=0.5-0.5*E if u<0 else 0.5+0.5*E
return(p)
def norm(a,sigma,x):
'''一般正態分布'''
u=(x-a)/sigma
return(st_norm(u))
while 1:
'''輸入一個數時默認為標准正態分布
輸入三個數(空格隔開)時分別為期望、方差、x
輸入 stop 停止'''
S=input('please input the parameters: ')
if S=='stop':break
try:
L=[float(s) for s in S.split()]
except:
print('Input error!')
continue
if len(L)==1:
print('f(x)=%.5f'%st_norm(L[0]))
elif len(L)==3:
print('f(x)=%.5f'%norm(L[0],L[1],L[2]))
else:
print('Input error!')
B. python輸入 3 個數,這里指定為 11,2,5,計算它們的均值和方差.
importnumpyasnp
arr=[11,2,5]
arr_mean=np.mean(arr)
arr_var=np.var(arr)
print("平均值為:%f"%arr_mean)
print("方差為:%f"%arr_var)
C. 用python怎麼做方差分析的簡單主效應分析
Tukey等多重檢驗容易報錯,數據結構不一致
TypeError: Cannot cast array data from dtype('S11') to dtype('float64') according to the rule 'safe'
D. 用Python怎麼算Mean和standard deviation
standard deviation:標准差 ,也稱均方差(mean square error),是各數據偏離平均數的距離的平均數,它是離均差平方和平均後的方根,用σ表示。標准差是方差的算術平方根。標准差能反映一個數據集的離散程度。平均數相同的,標准差未必相同。
mean deviation:平均偏差是指單項測定值與平均值的偏差(取絕對值)之和,除以測定次數。它是代表一組測量值中任意數值的偏差。所以平均偏差不計正負。
E. Python3 for循環求方差函數問題
defget_fanc(a):
b,c,d=0,0,0
print(type(a))
e=len(a)
f=sum(a)
b=f/e
foriina:
c=c+(i-b)
c=c/b
returnc
test=[1,2,3]
print(get_fanc(test))
我這邊測試表示沒有問題
F. python怎麼做均值方差歸一化
可以用線性歸一化,就是找到最大值和最小值。
平均數是表示一組數據集中趨勢的量數,是指在一組數據中所有數據之和再除以這組數據的個數。它是反映數據集中趨勢的一項指標。解答平均數應用題的關鍵在於確定「總數量」以及和總數量對應的總份數。在統計工作中,平均數(均值)和標准差是描述數據資料集中趨勢和離散程度的兩個最重要的測度值。
G. 用python求數據表中數據的均值與方差
以下為代碼:
numstr = input("請輸入全部數據:用英文逗號(,),中文逗號(,),
空格( ),製表符(tab鍵)或換行(請一次性復制過來)中的一種統一分隔數據:")
if "," in numstr:
numlist = numstr.split(",")
elif "," in numstr:
numlist = numstr.split(",")
elif " " in numstr:
numlist = numstr.split(" ")
elif " " in numstr:
numlist = numstr.split(" ")
elif " " in numstr:
numlist = numstr.split(" ")
else:
numlist = [numstr]
numlist = list(map(lambda x:x.strip(",").strip(",").
strip(" ").strip(" ").strip(" "), numlist))
for i in numlist.():
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 方差:%.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-均值)²加起來,最後再除以一個長度即可。
本程序的優點:輸入時逗號後出現空格與不小心多打逗號等情況都不會出問題,可以接受小數,可以先輸出最終數列以供核對。
H. 怎麼用python導入excel計算方差
指定行嗎簡單
使用readlines()
他會返回一個列表
一行是一個元素
I. python編程統計列表中各數據的方差和標准差請編寫主函數和計算方差的函數var。(不能引用庫里)
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() Python2.7可用