2017-08-29 161 views
0

給定具有非均勻分佈(高度尖峯)的數據集,我想重新採樣以創建具有大致均勻分佈的新數據集。我的方法:從非均勻數據創建均勻分佈的示例

  1. 將數據分成分檔。
  2. 目標箱水平=所有箱中每個箱的最小樣本數。
  3. 隨機刪除樣本,直到每個bin計數=目標bin級別。

有沒有更好的技術?

回答

1

我們知道,對於均勻分佈,我們有

平均值=(A + B)/ 2

方差=(BA)^ 2/12

所以你可以只構建這些和從這些參數的均勻分佈中抽取樣本,您可以設置a = min(數據)和b = max(數據),或者a = mean(lowest_bin)和b = mean(highest_bin)或類似的東西。您想如何設置a和b取決於您的數據和您想要完成的操作

+0

爲簡單起見,我們假設我的數據具有平均值= 0且範圍從-1到+1。這聽起來像你在說要從-1到+1之間的均勻分佈中選擇隨機樣本。但是這些樣本不符合我數據中的樣本。你是說要從均勻分佈中選擇隨機樣本,然後從我的數據中選擇最接近從統一分佈中提取的值的樣本? –

+0

嗯,如果你仍然想要採集原始數據,那麼最好做一些你喜歡的事情。讓我們假裝你有3個垃圾箱。第一個包含1個項目,第二個包含2個項目,第三個包含3個項目。那麼我會確保每個垃圾箱有概率1/3 - 所以bin1中的項目有P = 1/3,bin2中的兩個項目有P = 1/6(所以它們有1/3),項目在bin3中有P = 1/9。通過這種方式,您不需要刪除數據點,您只需對它們進行加權,以便我們從每個箱中選擇一個具有相同概率的物品,從而得到大致均勻的分佈。 –