2011-05-26 42 views
6

我有一個2D「熱圖」或PDF,需要通過隨機抽樣重新創建。 I.E.我有一個2D概率密度地圖顯示起始位置。我需要以與原始PDF相同的概率隨機選擇起始位置。要做到這一點,我想我需要先找到聯合CDF(累積密度函數),然後選擇隨機統一數字來採樣CDF。那就是我陷入困境的地方。如何從關節,離散,概率分佈函數數值採樣

如何在數值上找到我的PDF的聯合CDF?我試着在兩個維度上做累積和,但這並沒有產生正確的結果。我對統計學的瞭解讓我失望。

編輯熱圖/ PDF是[x,y,z]的形式,其中Z是每個x,y點處的強度或概率。

+0

你的熱圖所用的格式是什麼?你有一些函數p(x,y)給你在x,y的概率密度嗎? – 2011-05-26 21:59:51

回答

1

嗯,在this answer觀察到的,我的情況並不一定重要,我的分佈是二元的。因爲我可以將整個事物標準化以便它是真實的pdf(總表面積分爲1),所以我可以將M×N矩陣重新排列成1xM * N向量。一旦我有了,我可以做一個累積積分(cumtrapz在MATLAB中),然後從中抽樣(使用統一的隨機數來找到相應的索引值)。

3

您可以先查看二維密度圖,並且對於其中的每個(x,y)對,通過查找PDF查找z。這會給你一個概率爲z的起點(x,y)。所以每個起點都有自己的PDF概率。你現在可以做的是,爲了排序的起點,隨機挑選一個數字,並將其映射到某個起點。

例如,假設您有n個起點:P1 .. Pn。用概率p1 .. pn(歸一化或加權概率,所以總和爲100%)。比方說,你選擇一個隨機數P,P1挑選如果p < P1,P2挑P1是否< p < P1 + P2,如果P1 + P2 < p < P1 + P2 + P3等挑P3你可以把它看作是一個點P1到PN上的直方圖,這與累積分佈函數是相同的。

1

這就是我想要做的!

對於自變量X和Y,我有一個joint density function。現在我想從這個分佈中採樣新的x,y。

我相信我必須做的是找到聯合累積分佈,然後以某種方式從中進行抽樣。這正是你所做的。

當你說你使用「統一的隨機數來找到相應的索引值」時,你可能會更具體嗎?

僅供參考:X是詢價單的尺寸,Y是股票市場中的投標單的尺寸。

+0

[This](http://www.mathworks.com/matlabcentral/fileexchange/35797)MATLAB函數解決了它! – Groot 2012-04-20 07:23:22