从非均匀数据创建均匀分布的样本
Sample to Create Uniform Distribution from Non-Uniform Data
给定一个具有非均匀分布(高峰值)的数据集,我想重新采样以创建一个具有近似均匀分布的新数据集。我的做法:
- 将数据分成 bin。
- 目标 bin 级别 = 所有 bin 中每个 bin 的最小样本数。
- 随机删除样本,直到每个 bin 计数 = 目标 bin 级别。
有没有更好的技术?
我们知道对于均匀分布我们有
均值 = (a+b) / 2
方差 = (b-a)^2 / 12
所以你可以构造这些并从具有这些参数的均匀分布中采样,你可以设置 a = min(data) 和 b = max(data) 或者 a = mean(lowest_bin)和 b = mean(highest_bin) 或类似的东西。你想如何设置 a 和 b 取决于你的数据和你想要完成的事情
给定一个具有非均匀分布(高峰值)的数据集,我想重新采样以创建一个具有近似均匀分布的新数据集。我的做法:
- 将数据分成 bin。
- 目标 bin 级别 = 所有 bin 中每个 bin 的最小样本数。
- 随机删除样本,直到每个 bin 计数 = 目标 bin 级别。
有没有更好的技术?
我们知道对于均匀分布我们有
均值 = (a+b) / 2
方差 = (b-a)^2 / 12
所以你可以构造这些并从具有这些参数的均匀分布中采样,你可以设置 a = min(data) 和 b = max(data) 或者 a = mean(lowest_bin)和 b = mean(highest_bin) 或类似的东西。你想如何设置 a 和 b 取决于你的数据和你想要完成的事情