Matlab:如何随机打乱矩阵的列

Posted

技术标签:

【中文标题】Matlab:如何随机打乱矩阵的列【英文标题】:Matlab: How to random shuffle columns of matrix 【发布时间】:2012-09-05 06:41:56 【问题描述】:

我有一个像这样的矩阵:

 A=
    4 7 8 9
    3 3 5 7
    6 4 8 6

并希望随机洗牌并执行以下操作:

 A=
    8 4 9 7
    5 3 7 3
    8 6 6 4

有人知道吗?

【问题讨论】:

【参考方案1】:

您可以使用索引对列进行洗牌:

A(:,[3 1 4 2])

如果你想随机做,你可以创建一个随机排列:

A(:,randperm(size(A,2)));

【讨论】:

以上是关于Matlab:如何随机打乱矩阵的列的主要内容,如果未能解决你的问题,请参考以下文章

MATLAB的简单随机生成函数

matlab里如何把一个矩阵相同列向量的列序号依次输出出来?

怎么在 matlab 打乱矩阵顺序然后还原

matlab如何提取矩阵中的每一列作为新的变量

MATLAB 数据导出来到 txt 文件,矩阵的列由空格分开如何实现?

请问,怎么用matlab生成一个随机对称的矩阵