2012-11-26 163 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