2014-10-21 2 views
0

Эй у меня есть матрица 3х3 ..Randperm столбцы матрицы

A= [1 2 3 4 
    2 3 4 5 
    3 4 5 6] 

Я хочу с randperm, чтобы создать новую матрицу B, где столбцы будут shuflled..Anyone может помочь?

+3

Это не 3х3 ... –

+0

Дайте выход образец also.It может передать более –

+0

дубликат: http://stackoverflow.com/questions/12384884/ matlab-how-to-random-shuffle-columns-of-matrix – lakesh

ответ

3

Вы можете использовать randperm так:

B = A(:, randperm(size(A,2))) 
+0

Большое спасибо :) – Kourkoumpini

+0

Почему мы используем 2 по размеру (A, 2)? – Kourkoumpini

+0

Вы хотите передать количество столбцов в randperm (так как вы хотите, чтобы он возвращал числа в [1,4]). size (A, i) возвращает размер вдоль i-го измерения, поэтому размер (A, 1) - это количество строк, размер (A, 2) - это количество столбцов (и т. д. для матриц с большим количеством измерений) –

Смежные вопросы