2012-11-26 159 views
-2

我有嚴重的不平衡數據集。我想用200%的原始數據集大小執行統一的重採樣。matlab統一重新採樣

resample功能似乎不能按我的預期執行。任何人都知道任何工具箱或功能可以執行此操作?謝謝。

+1

你能解釋一下你試過的以及它爲什麼不起作用嗎? – jerad

+0

@jerad嗨,我試圖重新採樣數據a)使其平衡(統一重新採樣),和b)擴大數據集爲原來的兩倍。 Matlab函數'resample'似乎沒有我想要的選項或參數,並且我還沒有找到任何其他函數可以對不平衡數據集執行數據重採樣。你知道任何可以執行此操作的函數嗎?非常感謝你。 – evergreen8710

回答

0

如果你想隨機從大小爲N的數據集替換重新取樣,您可以使用randi(N,1,N*2)返回尺寸N *的矢量1和N然後使用該向量索引你原來的之間的隨機整數的2矩陣。例如,

N = 100; 
data = rand(1,N); % This simulates your original data set 
idx = randi(N, 1, N*2); 
newData = data(idx); 
+0

非常感謝!我想我可以稍微修改一下這些代碼,以確保平衡數據的要求。 – evergreen8710