Python計(jì)算標(biāo)準(zhǔn)差之numpy.std和torch.std的區(qū)別
輸入:
[1.0000, -1.0000, 3.0000]
課本中的標(biāo)準(zhǔn)差計(jì)算公式:
按照上述公式計(jì)算:
Numpy中的std計(jì)算:
import numpy as np tm = np.array([1.0000, -1.0000, 3.0000]) ddd = np.std(tm) print(ddd)
1.632993161855452
可以看出Numpy中的計(jì)算結(jié)果與課本中的公式計(jì)算出來(lái)的結(jié)果是一致的。
Torch中的std計(jì)算:
tm = torch.tensor([1.0000, -1.0000, 3.0000]) ddd = torch.std(tm) print(ddd)
tensor(2.)
計(jì)算出來(lái)的結(jié)果是2,與Numpy中的計(jì)算結(jié)果是不相同的。
查看torch.std的參數(shù):
torch.std默認(rèn)設(shè)置了unbiased=True。此時(shí)計(jì)算標(biāo)準(zhǔn)差的公式則使用貝塞爾校正 的方法:
可以看出貝塞爾校正的標(biāo)準(zhǔn)差最后除以n - 1。
可以看出確實(shí)計(jì)算出來(lái)的結(jié)果是2.
至于為何使用n-1,這里不做過(guò)多介紹,建議參考:貝塞爾校正。
附:貝塞爾校正
貝塞爾校正,指的是樣本方差前面的系數(shù)1/n-1
這就是這個(gè)系數(shù)的原理
注:設(shè)置torch.std中的unbiased=False,則與Numpy中的std的結(jié)果相同的。
總結(jié):
Numpy中的std計(jì)算與課本中的計(jì)算方式相同,都是除的是樣本數(shù)量n。
Torch中的std計(jì)算默認(rèn)使用的是unbiased=True即貝塞爾校正,除的是樣本數(shù)量n-1。
相關(guān)文章
Python?數(shù)據(jù)分析教程探索性數(shù)據(jù)分析
這篇文章主要介紹了Python?數(shù)據(jù)分析教程探索性數(shù)據(jù)分析,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下2022-08-08Python必備技巧之Pandas數(shù)據(jù)合并函數(shù)
Pandas中一共有五個(gè)數(shù)據(jù)合并函數(shù),分別為:concat、append、merge、join、combine,本文詳細(xì)講解這五個(gè)函數(shù)的使用方法,需要的可以參考一下2022-03-03Pandas處理時(shí)間序列數(shù)據(jù)操作詳解
這篇文章主要介紹了Pandas處理時(shí)間序列數(shù)據(jù)操作詳解,文章首先利用python自帶datetime庫(kù),通過(guò)調(diào)用此庫(kù)可以獲取本地時(shí)間展開內(nèi)容說(shuō)明具有一定的參考價(jià)值,需要的小伙伴可以參考一下2022-06-06python設(shè)置Pyplot的動(dòng)態(tài)rc參數(shù)、繪圖的填充
本文主要介紹了python設(shè)置Pyplot的動(dòng)態(tài)rc參數(shù)、繪圖的填充,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2022-06-06python實(shí)現(xiàn)代理服務(wù)功能實(shí)例
本文分析了代理服務(wù)的原理,并使用PYTHON實(shí)現(xiàn)了一個(gè)簡(jiǎn)單的代理服務(wù)功能供大家參考使用2013-11-11