天天看點

《貝葉斯思維:統計模組化的Python學習法》——第2章 統計計算 2.1 分布

本節書摘來異步社群《貝葉斯思維:統計模組化的python學習法》一書中的第2章,第2.1節,作者:【美】allen b. downey,更多章節内容可以通路雲栖社群“異步社群”公衆号檢視

貝葉斯思維:統計模組化的python學習法

在統計上,分布是一組值及其對應的機率。

例如,如果滾動一個六面骰子,可能的值是數字1至6,與每個值關聯的機率是1/6。

再舉一個例子,你應該有興趣了解在日常的英語使用中每個單詞出現的次數。你可以建立一個包含每個字及它出現的次數的分布。

為了表示python中的分布,可以使用一個字典映射某個值和它的機率。我編寫了一個名為pmf的類,利用python字典實作了上述功能,而且提供了一些有用的方法。為了對應機率品質函數這種分布的數學表示法,我将其命名為pmf。

pmf的定義在一個我為本書完成的python子產品thinkbayes.py中。可以從thinkbayes.com/thinkbayes.py下載下傳。欲了解更多資訊參見前言的“代碼指南”。

要使用pmf,可如下導入:

pmf = pmf()

for x in [1,2,3,4,5,6]:

pmf建立一個空的沒有指派的pmf。set方法設定每個值的機率為1/6。

這裡是另一個例子,計算每個單詞在一個詞序列中出現的次數:

pmf.normalize()<code>`</code>

一旦有一個pmf對象,你可以像下面這樣得到任何一個值相關聯的機率: