Ответ 1
Вы можете использовать np.random.choice
в массиве индексов и применить его к обоим массивам:
idx = np.random.choice(np.arange(len(x)), 1000, replace=False)
x_sample = x[idx]
y_sample = y[idx]
У меня есть два массива numpy x и y, которые имеют длину 10000. Я хотел бы построить случайное подмножество из 1000 записей как x, так и y. Есть ли простой способ использовать прекрасный, компактный random.sample(совокупность, k) для x и y для выбора одинаковых соответствующих индексов? (Векторы y и x связаны функцией y (x), например.)
Спасибо.
Вы можете использовать np.random.choice
в массиве индексов и применить его к обоим массивам:
idx = np.random.choice(np.arange(len(x)), 1000, replace=False)
x_sample = x[idx]
y_sample = y[idx]
Просто застегните два вместе и используйте их как совокупность:
random.sample(zip(xs,ys), 1000)
Результат будет состоять из 1000 пар (2-х кортежей) соответствующих записей из xs
и ys
.