Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Matlab-矩阵的划分_Matlab_Partitioning - Fatal编程技术网

Matlab-矩阵的划分

Matlab-矩阵的划分,matlab,partitioning,Matlab,Partitioning,可能重复: 我有一个有100行的矩阵a,我想把它随机分成两个矩阵,一个有70行a,另一个有剩余的30行。这是如何做到的?我确实花了很长时间使用Matlab,但这应该是可行的: 首先,我们寻找一个随机数来分割矩阵。 然后,我们将所有到这个因子的行存储在B中,其余的存储在C中 split = round(rand(1)*100); B = A[1:split, :]; C = A[(split+1):100, :]; 就像你说的,这是分裂。它将连续的行放在同一分区中。这不是我想要的。我希望它是可

可能重复:


我有一个有100行的矩阵a,我想把它随机分成两个矩阵,一个有70行a,另一个有剩余的30行。这是如何做到的?

我确实花了很长时间使用Matlab,但这应该是可行的: 首先,我们寻找一个随机数来分割矩阵。 然后,我们将所有到这个因子的行存储在B中,其余的存储在C中

split = round(rand(1)*100);
B = A[1:split, :];
C = A[(split+1):100, :];

就像你说的,这是分裂。它将连续的行放在同一分区中。这不是我想要的。我希望它是可能的,例如,有第一,第五行在第一分区,第二,第三,…第六等在第二分区哦,对不起,那么我误解了你。我认为分裂点应该是随机的。无论如何,看看你问题下面Jonas的链接,它应该能回答你的问题。好吧,从技术上讲,它不是重复的,因为Glup是在问如何随机分割,而不是简单地在第70行之后切割矩阵。@gnovice:重复问题的答案使用randperm生成两个随机分数。区别在于一个问题是1/3对2/3,而另一个问题是0.3对0.7。@Jonas:哎呀,我在另一个问题中没有提到随机性,但答案中有提到。这个问题当然应该被编辑,以使它更为清晰,更为一般,这样以后就可以很容易地找到它。@gnovice:done-ish。请看一下是否需要进一步改进。