您如何將泊松分佈擬合到表數據中?
我得到了一張桌子和, 這使得告訴許多孩子,所有有。
我被要求對此進行泊松分佈擬合。
將泊松分佈擬合到此意味著什麼?
在這裡,第 8 頁:http:
//www.stats.ox.ac.uk/~marchini/teaching/L5/L5.notes.pdf
據說擬合泊松涉及計算對於每個. 但是在哪裡去嗎?適合計算年代?
通過“擬合數據分佈”,我們的意思是某些分佈(即數學函數)被用作模型,可用於近似您擁有的數據的經驗分佈。如果要對數據進行分佈擬合,則需要從數據中推斷分佈參數。您可以通過使用一些會自動為您執行此操作的軟件(例如
fitdistrplus
在 R 中)來執行此操作,或者通過從您的數據中手動計算它,例如使用最大似然(參見 Wikipedia 中有關泊松分佈的相關條目)。在下圖中,您可以看到使用擬合泊松分佈繪製的數據。如您所見,這條線並不完美,因為它只是一個近似值。
在其他方法中,解決這個問題的方法之一是使用最大似然。回想一下,可能性是固定數據參數的函數,通過最大化這個函數,我們可以在給定數據的情況下找到“最有可能”的參數,即
在你的情況下是泊松概率質量函數。找到合適的直接數字方法將是使用優化算法。為此,首先定義似然函數,然後讓算法找到函數達到最大值的點:
# negative log-likelihood (since this algorithm looks for minimum) llik <- function(lambda) -sum(dpois(x, lambda, log = TRUE)*y) opt.fit <- optimize(llik, c(0, 10))$minimum
您會注意到這段代碼有些奇怪:我
dpois()
乘以y
. 您擁有的數據以表格的形式提供,其中每個值我們有伴隨的計數,而似然函數是根據原始數據而不是此類表格定義的。您可以通過重複每個正是次(即rep(x, y)
在 R 中)並將其用作統計軟件的輸入,但您可以採取更聰明的方法。可能性是. 乘法對於相同的正是時間與服用相同-它的力量:. 在這裡,我們最大化對數似然(請參閱此處為什麼我們採用 log),所以變成:. 這就是我們如何獲得表格數據的似然函數。但是,還有更簡單的方法。我們知道經驗平均值’s 是最大似然估計量(即它讓我們估計這樣的價值最大化可能性),因此我們可以簡單地計算平均值,而不是使用優化軟件。由於您有帶有計數的表格形式的數據,因此最直接的方法是簡單地使用加權平均加權平均在哪裡’s 用作權重。
mx <- sum(x*(y/sum(y)))
這會導致相同的結果,就好像您從原始數據計算算術平均值一樣。使用優化算法最大化似然性和取平均值都會導致幾乎完全相同的結果:
> mx [1] 0.3995092 > opt.fit [1] 0.3995127
所以的任何地方都沒有在您的筆記中提及,因為它們是人為創建的,作為以聚合形式(作為表格)存儲此數據的一種方式,而不是列出所有生的的。如上所示,您可以利用這種格式的數據。
以上程序讓您找到“最合適的”這就是您如何將分佈擬合到數據 - 通過找到分佈的此類參數,使其適合經驗數據。
你評論說你還不清楚為什麼’s 被視為權重。算術平均值可以被認為是加權平均值的一種特殊情況,其中所有權重都相同且等於:
現在想想你的數據是如何存儲的。和意味著你有四個五,和方法等等。當你計算平均值時,你首先需要對它們求和,所以:. 這導致使用計數作為加權平均值的權重,與原始數據的算術平均值完全相同
在哪裡. 同樣的想法也適用於按計數加權的似然函數。在這裡可能會產生誤導的是,在某些情況下,我們使用表示-th 觀察值,而在你的情況下是一個特定的值觀察到的次。正如之前所說,這只是存儲相同數據的另一種方式。