交换给定符号矩阵的元素
swapping elements of a given symbolic matrices
所以,这个问题很容易理解。给定任何维度的任何符号矩阵,我想交换元素以获得一个大小相同、元素相同但分布不同的矩阵。
例如
syms a b c
A=[a b c;0 0 c]
交换A我们可以得到:
A=[b a c;0 c 0];
使用 randperm(numel(A))
可以生成数字 1:numel(A) 的随机排列,它们是矩阵中的索引。
A(:)=A(randperm(numel(A)));
左边的A(:)
需要保持形状,否则你最终会得到一个元素的向量。如果您希望保持矩阵 A 不变:
B=A; %just to get a matrix of same size and datatype
B(:)=A(randperm(numel(A)));
所以,这个问题很容易理解。给定任何维度的任何符号矩阵,我想交换元素以获得一个大小相同、元素相同但分布不同的矩阵。
例如
syms a b c
A=[a b c;0 0 c]
交换A我们可以得到:
A=[b a c;0 c 0];
使用 randperm(numel(A))
可以生成数字 1:numel(A) 的随机排列,它们是矩阵中的索引。
A(:)=A(randperm(numel(A)));
左边的A(:)
需要保持形状,否则你最终会得到一个元素的向量。如果您希望保持矩阵 A 不变:
B=A; %just to get a matrix of same size and datatype
B(:)=A(randperm(numel(A)));