How can I row-normalize a symmetric matrix so each row sums to 1?

5 ビュー (過去 30 日間)
Rajendra
Rajendra 2019 年 3 月 21 日
編集済み: Rajendra 2019 年 3 月 21 日
Dear MATLAB community,
I am working with the bucky (“W=bucky”) matrix, an NxN matrix where N=60. I would like to row-normalize this matrix so that each row sums up to 1. I am aware of the command norm (and there might be other commands), but I'd like to command this manually, so I can better understand the process behind the calculaton.
If anyone has a clue on how to write this command manually, it is kindly appreciated. Thank you in advance.
Best,
Rajendra
  2 件のコメント
Walter Roberson
Walter Roberson 2019 年 3 月 21 日
? I do not find anything named normw() ?
Rajendra
Rajendra 2019 年 3 月 21 日
Sorry, that was a typo! Let me fix that. I meant the command norm.

サインインしてコメントする。

回答 (1 件)

Walter Roberson
Walter Roberson 2019 年 3 月 21 日
The below does retain symmetry. I am not positive at the moment that it would work for matrix that have non-zero entries on the diagonal.
newW = W ./ sum(W,2);

カテゴリ

Help Center および File ExchangeSources についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by