ページ

2014-04-30

ランダムネットワークの作成

********************************
function M=randomize_matrix(M)

s=size(M);
mask=triu(ones(s),1);
mask=reshape(mask,[s(1)^2 1]);
I=find(mask);

M=triu(M,1);
M=reshape(M,[s(1)^2 1]);
M(I)=M(I(randperm(length(I))));
M=reshape(M,[s(1) s(1)]);
M=M+M';

********************************

BCTのランダム化関数はなんかうまく動かない。
エッジ数が保存されない。
なんでだろうか。

というわけで自分で書いた。
前も作った気がするけどどっかいったので忘れないようにメモ。
エッジをつなぎ替えるとかはめんどいので,全シャッフルで。
non-directionalなネットワークのみ対応可。


0 件のコメント:

コメントを投稿