How to replace diagonal of square matrices within a cell array?
1 回表示 (過去 30 日間)
古いコメントを表示
I have a 940X1 cell array where each element is a 298X298 square matrix. I want to replace the main diagonals of each square matrix with zero. Is there a way to do it?
0 件のコメント
採用された回答
Star Strider
2021 年 9 月 11 日
The easiest way is to subtract the diagonal of each matrix from the matrix —
C = {rand(4); rand(4); rand(4)}
Cr = cellfun(@(x) x-diag(x), C, 'Unif',0)
Cr{1}
Cr{3}
Make appropriate changes to get different results.
.
8 件のコメント
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Operating on Diagonal Matrices についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!