當前位置:成語大全網 - 新華字典 - 用python求數據表中數據的均值和方差

用python求數據表中數據的均值和方差

以下是代碼:

Numstr = input("請輸入所有數據:英文逗號(,),中文逗號(,),\

空格()、制表符(tab鍵)或換行符(請復制壹次)中統壹分隔的數據之壹): ")

如果“,”在numstr中:

numlist = numstr.split(",")

elif "," in numstr:

numlist = numstr.split(",")

numstr中的elif "\t ":

numlist = numstr.split("\t ")

numstr中的elif "\n ":

numlist = numstr.split("\n ")

numstr中的elif " ":

numlist = numstr.split(" ")

否則:

numlist = [numstr]

numlist = list(map(lambda x:x . strip(",")。條帶(“,”)。\

strip("\t ")。strip("\n ")。strip(" ",numlist))

對於numlist.copy()中的I:

嘗試:

a =浮動(壹)

除了:

numlist.remove(i)

Print("過濾後的字符串:%s"%i ")

#好吧,以上很多只是為了方便用戶(但有些還是有用的),主要是以下幾種。

numlist = list(map(lambda x:float(x),numlist) #所有字符串都轉換為浮點型。

Print("最終系列:",numlist)#輸出用於檢查的最終系列。

average = sum(numlist)/len(numlist)#將系列的總和除以列的長度,得到平均值。

方差= 0#方差,先記為0。

對於numlist中的I:#遍歷列表

方差+= (i-average) ** 2#反正是公式對吧?先加進去。

Variance /= len(numlist)#還是壹個公式,那麽長的字符串還得除以壹個數列的長度。

print(" mean:% . 2f \ n variance:% . 2f " %(average,variance))#分兩行輸出。

以下是輸出效果:

請輸入所有數據:使用英文逗號(,)、中文逗號(,)、空格()、tab (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均值)?加起來最後除以壹個長度。

這個程序的優點:輸入壹個逗號時,不會出現逗號後有空格,不小心打多了逗號等問題。可以接受小數,可以先輸出最後的數列進行核對。