This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
from os import listdir | |
from os.path import isfile, join | |
import multiprocessing | |
import networkx as nx | |
from sklearn.utils.graph import single_source_shortest_path_length as sssp | |
fb_folder = "just8" | |
def func_sssp(component): |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
datdir = '/Users/clinpsywoo/Documents/2011-2016yr/2014-2015(4th_GS)/Network_modeling/Problem_sets/FB100 dataset/facebook100'; | |
datfiles = filenames(fullfile(datdir, '*mat'), 'absolute'); | |
for i = 1:numel(datfiles) | |
fprintf('\nWorking on %02d/%02d...\t', i, numel(datfiles)); | |
tic; | |
load(datfiles{i}); | |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
datdir = '/Users/clinpsywoo/Documents/2011-2016yr/2014-2015(4th_GS)/Network_modeling/Problem_sets/FB100 dataset/facebook100'; | |
datfiles = filenames(fullfile(datdir, '*mat'), 'absolute'); | |
for i = 1:numel(datfiles) | |
fprintf('\nWorking on %02d/%02d...\t', i, numel(datfiles)); | |
tic; | |
load(datfiles{i}); | |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
%% make a mask for MPFC | |
cl = region(which('atlas_labels_combined.img'), 'unique_mask_values'); %anat_lbpa_thal.img'); %% 'lpba40.spm5.avg152T1.label.nii'); | |
cluster_orthviews(cl, 'unique'); | |
clout = []; | |
% choose MPFC clusters | |
[clout,cl] = cluster_graphic_select(cl,clout); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
function cent = centrality_wani(A, varargin) | |
% function cent = centrality_wani(A, varargin) | |
% | |
% feature: This function calculate four different centrality measures, | |
% including degree, eigenvector, harmonics, and betweenness | |
% centrality measures. This only works for undirected/unweighted | |
% graph for now. | |
% | |
% input: A adjacency matrix |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
function A = build_adjacency_from_list(ij) | |
% function A = build_adjacency_from_list(ij) | |
% | |
% ij: row, column | |
A = zeros(max(max(ij)),max(max(ij))); | |
for i = 1:length(ij) | |
A(ij(i,1), ij(i,2)) = 1; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
function q = modularity_wani(A,z,varargin) | |
% function q = modularity_wani(A,z, [optional 'scalar' or 'degree']) | |
% | |
% feature: This function calculates the modularity (same with | |
% assortativity), q. It works for categorical and continuous | |
% (needs optional input, 'scalar') attributes. | |
% | |
% input: z attributes or category membership | |
% A adjacency matrix |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
function [max_z, max_q, outinfo] = community_modularity(A, varargin) | |
% function [z, q, outinfo] = community_modularity(A, optional_inputs) | |
% | |
% feature: This function conduct the greedy agglomerative algorithm to find | |
% community structure that maximizes the network's modularity (Q). | |
% | |
% input: A adjacency matrix | |
% | |
% output: max_z a vector of community membership that maximize Q |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
function nmi = norm_mutual_info(za, zb) | |
% function nmi = norm_mutual_info(za, zb) | |
% | |
% feature: This function calculates the normalized mutual information, | |
% which tells us how much information we learn about Community | |
% structure A (or B) if we know B (or A). If A and B are | |
% identical, we learn everything about A from B (or B from A). | |
% In this case, nmi returns 1. If they are entirely uncorrelated, | |
% we learn nothing. In this case, nmi returns 0. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
% Data info: | |
% Each of the school .mat files has an A matrix (sparse) and a | |
% "local_info" variable, one row per node: a student/faculty status | |
% flag, gender, major, second major/minor (if applicable), dorm/house, | |
% year, and high school. Missing data is coded 0. | |
% datdir = '/Users/clinpsywoo/Documents/2011-2016yr/2014_2015_4th_GS/Network_modeling/Problem_sets/facebook100'; | |
datdir = '/Volumes/engram/Users/wani/Documents/Network_modeling/Problem_sets/facebook100'; | |
fnames = filenames(fullfile(datdir, '*mat')); |
OlderNewer