1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374 |
- function [degree, strength, modularity, CPL, CC, SW] = MRI_graph(mNet, AUC)
- mNetTresh = zeros(98,98,AUC(end));
- CPLx = nan(1,AUC(end));
- CCx = nan(1,AUC(end));
- NCC = nan(1,AUC(end));
- NCPL = nan(1,AUC(end));
- SWx = nan(1,AUC(end));
- modul = nan(1,AUC(end));
- mean_degree = nan(1,AUC(end));
- Stx = nan(1,AUC(end));
- f = waitbar(0,strcat('0/100'));
- for gi=AUC
- p=gi/100;
- waitbar(1i/100,f,num2str(gi),'/100');
- mNetD = threshold_proportional(mNet,p);
- mNetTresh(:,:,gi) = mNetD;
- % mNetD(mNetD==0) = nan;
- mNetDWght = weight_conversion(mNetD,'normalize');
- mNetDBin = weight_conversion(mNetD,'binarize');
- % Eglob (gi) = efficiency_wei(mNetD); % global efficieny
- Stx(gi) = squeeze(mean(strengths_und(mNetD)));
- D = distance_wei_floyd(mNetDWght,'inv');
- Dx = distance_wei_floyd(mNetDBin,'inv');
-
- [~,Q] = community_louvain(mNetD,1,[],'negative_sym');
- modul(gi) = Q;
- dgr = degrees_dir(mNetD);
- mean_degree(gi) = squeeze(mean(dgr));
- lambda = charpath(D,0,0);
- CPLx(gi) = lambda;
- cplb = charpath(Dx,0,0);
- clx = clustering_coef_wu(mNetDWght);
- CCx(gi) = squeeze(mean(clx));
- clb = clustering_coef_wu(mNetDBin);
- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- % small worldness density threshold
- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
- % create random network to asses small worldness
- lambda_rdm = zeros(1,100);
- clcf_rdm = zeros(1,100);
- for k=1:100
- random = makerandCIJ_und(size(mNetD,1),nnz(mNetD)/2); % compute random network with same number of nodes and edges
- D_rdm = distance_bin(random);
- lambda_rdm(k) = charpath(D_rdm,0,0);
- clcf_rdm(k) = mean(clustering_coef_bu(random));
- end
- % small-worldness
- norm_clcf = abs(squeeze(mean(clb)))/abs(mean(clcf_rdm));
- NCC(gi) = norm_clcf;
- norm_lambda = (cplb/(mean(lambda_rdm)));
- NCPL(gi) = norm_lambda;
- SWx(gi) = norm_clcf/norm_lambda;
- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- end
-
- F = findall(0,'type','figure','tag','TMWWaitbar');
- delete(F)
- CC = squeeze(mean(CCx,'omitnan'));
- CPL = squeeze(mean(CPLx,'omitnan'));
- SW = squeeze(mean(SWx,'omitnan'));
- modularity = squeeze(mean(modul,'omitnan'));
- degree = squeeze(mean(mean_degree,'omitnan'));
- strength = squeeze(mean(Stx,'omitnan'));
- end
|