import os
import pandas
import hetio.readwrite
import hetio.permute
%%time
path = 'data/hetnet.json.bz2'
graph = hetio.readwrite.read_graph(path)
CPU times: user 2min, sys: 7.15 s, total: 2min 7s Wall time: 2min 7s
n_perms = 5
multiplier = 5
%%time
stat_dfs = list()
permuted_graph = graph
for i in range(n_perms):
i += 1
print('Starting permutation', i)
permuted_graph, stats = hetio.permute.permute_graph(permuted_graph, multiplier=multiplier, seed=i)
stat_df = pandas.DataFrame(stats)
stat_df['permutation'] = i
stat_dfs.append(stat_df)
path = os.path.join('data', 'permuted', 'hetnet_perm-{}.json.bz2'.format(i))
hetio.readwrite.write_graph(permuted_graph, path)
# Save stats
stat_df = pandas.concat(stat_dfs)
path = os.path.join('data', 'permuted', 'stats.tsv')
stat_df.to_csv(path, sep='\t', index=False, float_format='%.5g')
Starting permutation 1 Starting permutation 2 Starting permutation 3 Starting permutation 4 Starting permutation 5 CPU times: user 3h 56min 27s, sys: 51.5 s, total: 3h 57min 18s Wall time: 3h 57min 18s