How to produce two 3*3 random matix for two varible

2 次查看(过去 30 天)
Of course,we can use this method
>> matrix1=randi(10,3)
matrix1 =
3 3 7
8 1 6
2 6 5
>> matrix2=randi(10,3)
matrix2 =
7 7 8
7 10 3
7 3 2
Then the variable both matrix1 and matrix2 is random matrix.But I don't like this repetition work.If I'm in Mathematica,I just run
{matrix1, matrix2} = RandomInteger[10, {2, 3, 3}]
Then I get two 3*3 matrix. Matlab can conveniently to do such thing or is there any more elegant method?

回答(2 个)

Walter Roberson
Walter Roberson 2017-7-9
There is no convenient way to do this in MATLAB.
You can create a variable and use mat2cell to break it into two cell locations. You need to assign that to a variable. Then you can use deal() to split the variable by taking advantage of comma list expansion. If you were doing this more than once you would want to write a function to do it.

KSSV
KSSV 2017-7-9
iwant=randi(10,3,3,2)
  2 个评论
Yode
Yode 2017-7-9
I know this,I just don't know how to asign the two matrix to two variable.Such as you cannot use [a,b]=randi(10,3,3,2) to get two variable.
KSSV
KSSV 2017-7-9
Why you want to assign them into two different variables? There is no necessity for this.. iwant(:,:,1) and iwant(:,:,2), this is the way you use where you want.

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 输入和输出参数 的更多信息

标签

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!