In [1]:
import networkx as nx
import custom_funcs as cf
import pandas as pd
%load_ext autoreload
%autoreload 2
In [2]:
G = nx.read_gpickle('20150902_all_ird Final Graph.pkl')
G = cf.impute_reassortant_status(G)
G = cf.clean_host_species_names(G)
G = cf.impute_weights(G)
G = cf.remove_zero_weighted_edges(G)
In [3]:
len(G.edges())
Out[3]:
In [4]:
G.edges(data=True)[0]
Out[4]:
In [5]:
# This block of code will dump the data.
edgelist = []
for sc, sk, d in G.edges(data=True):
edge_data = dict()
edge_data['source'] = sc
edge_data['sink'] = sk
for k, v in d.items():
if isinstance(v, dict):
for k2, v2 in v.items():
edge_data['{0}_{1}'.format(k, k2)] = v2
else:
edge_data[k] = v
edgelist.append(edge_data)
In [7]:
edgelist_df = pd.DataFrame(edgelist)
edgelist_df.to_csv('supp_data/edgelist.csv')
In [ ]: