Подтвердить что ты не робот

Случайный образец Python из двух массивов, но соответствующие индексы

У меня есть два массива numpy x и y, которые имеют длину 10000. Я хотел бы построить случайное подмножество из 1000 записей как x, так и y. Есть ли простой способ использовать прекрасный, компактный random.sample(совокупность, k) для x и y для выбора одинаковых соответствующих индексов? (Векторы y и x связаны функцией y (x), например.)

Спасибо.

4b9b3361

Ответ 1

Вы можете использовать np.random.choice в массиве индексов и применить его к обоим массивам:

idx = np.random.choice(np.arange(len(x)), 1000, replace=False)
x_sample = x[idx]
y_sample = y[idx]

Ответ 2

Просто застегните два вместе и используйте их как совокупность:

random.sample(zip(xs,ys), 1000)

Результат будет состоять из 1000 пар (2-х кортежей) соответствующих записей из xs и ys.