- 論壇徽章:
- 0
|
%求網(wǎng)絡(luò)的度、介數(shù)和鄰近度
%======================(1)輸入數(shù)據(jù)========================
load UniquePPI_newid.mat
%將兩列的互作形式先轉(zhuǎn)換成矩陣格式;
binary_inter=UniquePPI_newid;
node=unique(binary_inter);%互作網(wǎng)絡(luò)包含的點(diǎn)
N=length(node);%網(wǎng)絡(luò)中點(diǎn)的數(shù)目
inter_matrix=zeros(N,N);%生成N*N矩陣,元素都是0
for i=1:size(binary_inter,1)
inter_matrix(binary_inter(i,1),binary_inter(i,2))=1;
inter_matrix(binary_inter(i,2),binary_inter(i,1))=1;
test=i;
test
end
clear binary_inter i
%======(1.2)將矩陣轉(zhuǎn)換成稀疏矩陣
inter_matrix=sparse(inter_matrix);
%===========(2)計(jì)算網(wǎng)絡(luò)的度、介數(shù)和鄰近度
[ci sizes]=components(inter_matrix);
index=find(sizes==max(sizes));
Gene_maxcomp=find(ci==index(1));
geneid=node(Gene_maxcomp,1);
inter_matrix=inter_matrix(Gene_maxcomp,Gene_maxcomp);
%節(jié)點(diǎn)的度
degree=full(sum(inter_matrix)');
%節(jié)點(diǎn)的介數(shù)
betweenness=betweenness_centrality(inter_matrix);
%節(jié)點(diǎn)的鄰近度
closeness=mycloseness(inter_matrix);
closeness=closeness*(size(inter_matrix,1)-1);
%保存結(jié)果
newid=1:size(inter_matrix,1);
result=[geneid,newid',degree,betweenness,closeness];
save network_degree_betw_closeness node inter_matrix result |
|