我有一个列表y和一个numpy矩阵X。它们对应的是。y[i]与X[i]相关。y由1或0组成。我希望从X中随机选择a数据实例,其中对应的y值等于1,其中a是常量。
发布于 2017-03-21 07:34:27
我假设您希望选择样本中y为1的整行。您可以随机抽取对应y值为1的行,如下所示:
import numpy as np
from itertools import compress
from random import sample
a = 2
y = [0, 1, 1, 0, 1, 0, 1, 0, 1, 1]
X = np.random.rand(10, 3)
picked = sample(list(compress(X, y)), a)itertools.compress用于创建一个只包含行的列表,其中对应的y是1。然后使用sample函数从该列表中随机抽取大小为a的样本。
https://stackoverflow.com/questions/42915776
复制相似问题