How to replace diagonal of square matrices within a cell array?
4 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
Adnan Habib
il 11 Set 2021
Commentato: Star Strider
il 13 Set 2021
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 Commenti
Risposta accettata
Star Strider
il 11 Set 2021
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 Commenti
Più risposte (0)
Vedere anche
Categorie
Scopri di più su Operating on Diagonal Matrices in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!