首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何每次在Matlab中选择矩阵中的不同行?

如何每次在Matlab中选择矩阵中的不同行?
EN

Stack Overflow用户
提问于 2015-06-08 07:06:11
回答 1查看 86关注 0票数 1

我想要创建一个从另一个矩阵中选择不同行的矩阵。

例如,我有一个10x3矩阵A

代码语言:javascript
运行
复制
A =

 1     2     3
 4     5     6
 7     8     9
10    11    12
13    14    15
16    17    18
19    20    21
22    23    24
25    26    27
28    29    30

现在,我想在迭代过程中从B中创建一个大小为2 X 3的新矩阵B,这样矩阵B应该在每次迭代中包含不同的行(最大迭代= 5)。

我的伪代码:

代码语言:javascript
运行
复制
for j=1:5
  create matrix 'B' by selecting 2 rows randomly from 'A', which should be different
end
EN

Stack Overflow用户

回答已采纳

发布于 2015-06-08 07:17:09

您可以使用randperm随机地搞乱行,然后在每次迭代中依次取两行。

代码语言:javascript
运行
复制
iterations = 4;
permu = randperm(size(A,1));
out = A(permu(1:iterations*2),:);

for ii = 1:iterations
    B = out(2*ii - 1:2*ii,:)
end

结果:

代码语言:javascript
运行
复制
B =
22    23    24
25    26    27

B =
 1     2     3
13    14    15

B =
19    20    21
16    17    18

B =
 7     8     9
10    11    12
票数 3
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30703023

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档