从数据集中随机抽样,同时保留原始概率分布

时间:2015-09-12 14:11:23

标签: java sampling probability-density

我有一组从测量中收集的> 2000个数字。我想从这个数据集中抽样,每次测试约10次,同时保持整体的概率分布,并在每次测试中(尽可能地扩展)。例如,在每个测试中,我想要一些小值,一些中产阶级值,一些大值,其中均值和方差大致接近原始分布。结合所有测试,我还想要所有样本的总平均值和方差,大致接近原始分布。

由于我的数据集是long-tail probability distribution,每个分位数的数据量并不相同:

Probability density

图1.约2k数据元素的密度图。

我正在使用Java,现在我正在使用uniform distribution,并使用数据集中的随机int,并返回该位置的数据元素:

public int getRandomData() {
    int data[] ={1231,414,222,4211,,41,203,123,432,...};
    length=data.length;
    Random r=new Random();
    int randomInt = r.nextInt(length);
    return data[randomInt];
}

我不知道它是否按我的意愿工作,因为我按照测量的顺序使用数据,这有很大的序列相关性。

2 个答案:

答案 0 :(得分:3)

它可以随心所欲地工作。数据的顺序无关紧要。

答案 1 :(得分:2)

随机抽样保留了概率分布。