我有一个n个观测数据集(nx1向量),并希望通过随机选择n / 3个观测值(或在某个约束条件下,即在某个约束条件下)来创建此数据的子集,其均值是预先知道的。数据子集的平均值在已知平均值的范围内。
有人可以帮我解决代码在matlab中执行此操作吗? 注意,我不想使用rand函数来创建随机数据,因为我已经收集了数据。
例如,在较小的范围内:如果我有以下12个观察数据集:
data = [8;7;4;6;9;6;4;7;3;2;1;1];
但随后想要随机选择此数据的一个子集,其中只包含4个平均值为4的观察值(或者平均值在3.5-4.5之间):
然后答案可能是datasubset=[7;3;2;4]
,但答案也可能是datasubset=[6;4;2;4]
或datasubset=[6;4;3;4]
。
如果有几种可能的解决方案并不重要,我只需要其中一种,但我也想了解替代解决方案。