How to create a matrix with arbitrary dimensions
27 ビュー (過去 30 日間)
古いコメントを表示
Hi,
I like to create a matrix with arbitrary dimensions.
E.g., I need a function getMatrix(m, s), which returns a m-dimensional matrix with size s, filled with zeros or ones.
Could not working out until today, help is appreciated.
0 件のコメント
採用された回答
Jos (10584)
2019 年 2 月 20 日
To create an zero array of an arbitray dimensions between 1 and D with arbitry sizes between 1 and S :
D = 10 ;
S = 6 ;
X = arrayfun(@(x) randi(S), 1:randi(D),'un',0)
M = zeros(X{:})
[size(M) ; [X{:}]]
2 件のコメント
Jos (10584)
2019 年 2 月 20 日
You want a Sz-by-Sz-by- ... -by-Sz array, where Dims specfies the number of Sz's
Res = zeros(repmat(Sz, 1, D))
その他の回答 (1 件)
Geoff Hayes
2019 年 2 月 20 日
Michael - this seems like a homework question so see zeros or ones for how to create a matrix of zeros or ones respectively. And see Declare function name, inputs, and outputs for how to build your function.
参考
カテゴリ
Help Center および File Exchange で Loops and Conditional Statements についてさらに検索
製品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!