0

我有两组具有不同分布的数据(a,b)。Set b 有更多的数据点,也有更多的变化。我需要以最接近集合 a 分布的方式对集合 b 进行二次抽样。尽管集合 b 的平均值要大得多,但集合“a”中的一些值也很大,需要保留在集合 a 中。

我可以开始修剪集合 b 的下限和上限以获得相似的平均值,但是标准差无法比较。我考虑的下一件事是做一堆排列,我随机对集合 b 进行二次抽样,直到我发现二次抽样的集合 b 分布与集合 a 分布没有不同的情况(由 R stats 中的 ks.test 评估)。我想我想知道是否有一个包或功能可以稳健地做到这一点(或者可能更合适)。

一个示例数据集:

a = c(rnorm(n = 100, mean = 0, sd = sqrt(.1)), 4, 7, 10)
b = rnorm(n = 1000, mean = 3, sd = sqrt(4))
b = b[其中(b >= min(a))]

范围(a)
[1] -0.6215744 10.0000000
范围(b)
[1] -0.5520407 8.7371966

sd(a)
[1] 1.287062
sd(b)
[1] 1.834108

4

0 回答 0