在我的上一篇博文我開始分析關於在即將舉行的總統選舉中有多少人計劃投票給候選人A的虛構調查數據。通過擬合Beta二項分佈,我能夠發現百分比( p )人們在不同城市之間有所不同,可以使用Beta(27.64,28.63)分佈進行建模。這個分佈平均為0.491。但這並不一定意味著候選人A在我抽樣的城市中合併時將獲得總票數的49.1%。在總體投票時,人口較多的城市的權重更大。
如果所有城市的人口接近平等,那麼民眾投票總數將達到49.1%左右。但實際上,有些城市比其他城市更大。如果值較小 p 來自較大的城市,結果將低於49.1%。如果值越大 p 來自較大的城市,那麼結果將超過49.1%。如果範圍 p 分散在小城市和大城市,結果可能接近49.1%。
在我的虛構示例中,我採樣的城市人口包含在文件Voting.com中。我從中檢索了數據維基百科 ,但最初的來源是美國人口普查局。順便說一下,使用JMP從JMP網頁檢索數據很容易互聯網開放文件菜單上的命令。只需提供URL,JMP就會導入它在該URL中找到的任何表格數據。
我們如何估算我抽樣的100個城市的候選人A的總投票比例?使用調查結果作為城市百分比的估計值,乘以城市人口,然後在城市之間求和,得出總體總數。但不是那麼快 - 我們需要調整人口數量,以解釋並非所有人口都具有投票年齡的事實。此外,並非所有投票年齡的人都投票,因此需要進一步調整。
再次轉向人口普查局 ,我找到了有投票年齡的人口比例的數據。數字因地而異。我沒有使用一個數字(比如平均值)來總結所有的比例,而是適合分佈。由於比例介於0和1之間,因此Beta分佈是一個很好的選擇。使用JMP的分佈擬合功能,擬合的分佈證明是Beta(397,126)。下面是分佈圖。批量介於0.7和0.8之間,這意味著對於大多數地區而言,投票年齡的人口百分比為70%-80%。

我還找到了投票年齡人口實際投票比例的數據。再次適合Beta發行版,我獲得了Beta(30,32)。見下圖。批量介於0.3和0.7之間,這意味著對於大多數地區而言,實際投票的投票年齡人口的百分比為30%-70%。

我是蒙特卡洛模擬的粉絲。因此,讓我們使用JMP腳本語言來運行模擬。如果您想自己嘗試,腳本附有數據。腳本如下所示:

運行模擬10,000次(花費不到10秒)給出了100個城市中候選人A的流行投票比例的以下分佈。

分佈的平均值為50.37%。對於區間估計,使用第2.5和第97.5百分位數。我估計,對於我抽樣的100個城市,候選人A的得票率將在50.12%到50.61%之間。
50%位於分佈的尾部。候選人A在100個城市中獲得至少50%投票的概率是多少?我們可以擬合分佈並估計概率。如果您認為分佈看起來正常,那麼您是對的。回想一下中心極限定理,它表示平均值的分佈是漸近正態的,因為平均值中的項目數增加了。總體比例是各個城市比例的加權平均值;這是正常的。使用均值= 0.5037和stdev = 0.00124的正態分佈,候選人A在100個城市中獲得至少50%投票的概率為99.85%。如果你喜歡候選人A那是個好消息。
記住,分配 p 平均49.1%。該值比模擬結果中的平均值低10個標準偏差。事實上,它甚至沒有顯示在直方圖上。這意味著候選人A的總體百分比幾乎沒有機會低至49.1%。假設人口相同,這將是平均值。因此,在城市人口總數上,城市人口的比例確實有所不同。也許並不多,因為50.3% - 49.1%= 1.2%。
這個例子很簡單,並沒有考慮到很多因素。例如,您如何處理城市內變化?不同的人群樣本可以產生不同的結果,人們可以在現在和選舉日之間改變主意。一個好主意可能是使用Beta分佈對城市內變化進行建模。人口不到10萬的城市呢?將這些結果推廣到較小的城市是否安全?選舉團怎麼樣?有關選舉大學問題的有趣答案,請參閱此內容文章關於楊百翰大學教授正在做些什麼來預測選舉結果。
JMP狂熱分子在選舉季節有什麼樂趣?第1部分 - JMP博客中寫道:
[...]調整。在我的下一篇博客文章中,我將繼續分析並解決人口問題[...]
瑞安中寫道:
喬納森你好,
既然你是蒙特卡洛的粉絲,你有一個JSL腳本,允許在運行蒙特卡羅模擬之前,在兩個變量之間輸入相關係數,使它們相互關聯,這樣就可以從它們的樣本中進行採樣。關節密度?
我很驚訝這種簡單的MC模擬不能通過JMP中的菜單系統輕鬆完成。肯定看來這是JMP的缺點。
謝謝,
Ryan- Kellyeng@cox.net