У меня есть два двухмерных списка.Я хочу перетасовать его, но только внешнюю сторону перемешать.
Если я рандомизирую список заказов a, я хочу, чтобы список b следовал порядку списка a.
Я видел рандомизацию двух спискови поддержание порядка в python , но, похоже, это не работает для меня.
Ниже приведен код, которым я сейчас занимаюсь.
Но это слишком медленно для больших списков с пустыми местами.
import numpy as np
import random
a = np.array([[1,2,3], [4,5,6], [7,8,9], [10,11,12]])
b = np.array([[100,200,300,400,500], [600,700,800,900,901], [101,102,103,104,105], [501,502,503,504,505]])
r = [i for i in range(4)]
random.shuffle(r)
newa = np.empty((0, 3))
newb = np.empty((0, 5))
for rr in r:
newa = np.append(newa, [a[rr]], axis=0)
newb = np.append(newb, [b[rr]], axis=0)
print(newa)
print(newb)
Какой-нибудь питонический или более быстрый способ сделать это?
Спасибо за ответ.