Put elements into corresponding locations of upper triangular matrix
古いコメントを表示
Hi all,
Imagine I have a vector:
inpt = (1:6)';
Now I'd like to put elements of inpt in the upper triangular part of a 3 by 3 matrix otpt, so I have:
otpt =
1 2 4
0 3 5
0 0 6
What's the best way to do it? Thanks!
1 件のコメント
Jan
2017 年 7 月 26 日
Is this a homework question? If so, please mention it, because then a different type of answers is required.
採用された回答
その他の回答 (1 件)
Roger Stafford
2017 年 7 月 26 日
Let vector ‘inpt’ have size = n*(n+1)/2,1.
otpt = zeros(n);
otpt(triu(ones(n),0)==1) = inpt;
3 件のコメント
Prabhjot Dhami
2020 年 4 月 23 日
Thanks for this!
warnerchang
2021 年 6 月 4 日
Brilliant! it's actually the sum formula for arithmetic sequence! very helpful for understanding.
KUMAR TRIPATHY
2021 年 10 月 3 日
Absolutely brilliant, concise and crisp!
カテゴリ
ヘルプ センター および File Exchange で Surrogate Optimization についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!