Giả sử tôi có một mảng r
của thứ nguyên (n, m)
. Tôi muốn trộn các cột của mảng đó.Trộn các cột của một mảng với Numpy
Nếu tôi sử dụng numpy.random.shuffle(r)
, nó sẽ xáo trộn các dòng. Làm thế nào tôi chỉ có thể trộn các cột? Vì vậy, cột đầu tiên trở thành cột thứ hai và cột thứ ba là cột thứ nhất, vv, ngẫu nhiên.
Ví dụ:
đầu vào:
array([[ 1, 20, 100],
[ 2, 31, 401],
[ 8, 11, 108]])
đầu ra:
array([[ 20, 1, 100],
[ 31, 2, 401],
[ 11, 8, 108]])
Đó là. Tôi đề nghị 'r.T' cho transpose, mặc dù. – user2357112
@ user2357112 là 'r.T' chính xác giống như' np.transpose (r) 'nhưng ngắn hơn? –
Có hiệu quả giống hệt nhau. Có một sự khác biệt rất nhỏ đối với mảng 1-d, nhưng có thể bạn sẽ không sử dụng 'T' hoặc' transpose' cho mảng 1-d. – user2357112