#!/usr/bin/env python # encoding: utf-8 import os import sys import argparse import numpy import networkx as nx import filehandler as fh if __name__ == '__main__': parser = argparse.ArgumentParser() parser.add_argument('--network', required=True) parser.add_argument('--filename', required=True) args = parser.parse_args() network = fh.load_from_edge_list(args.network) if (nx.is_connected(network)): print 'already a connected graph' else: largest = nx.connected_component_subgraphs(network)[0] fh.write_edge_list(args.filename, largest) sys.exit(0)
import argparse import networkx as nx import filehandler as fh if __name__ == '__main__': parser = argparse.ArgumentParser() parser.add_argument('--network', required=True) args = parser.parse_args() if not os.path.exists(args.network): print "File given by --network not found." sys.exit(128) filename = os.path.splitext(args.network)[0] network = fh.load_from_edge_list(args.network) degree = 2.0 * len(network.edges()) / len(network) stats = 'average node degree: %.3f' % degree density = nx.density(network) stats = '%s\ndensity: %.3f' % (stats, density) cluster = nx.average_clustering(network) stats = '%s\naverage clustering: %.3f' % (stats, cluster) diameter = nx.diameter(network) stats = '%s\ndiameter: %d' % (stats, diameter) fh.write_string("%s_stats.txt" % filename, stats) distribution = nx.degree_histogram(network) dist = [("degree, frequency")] dist.extend([("%d, %d" % (position, value)) for position, value in enumerate(distribution)])
parser.add_argument('--network', required=True) parser.add_argument('--tree', required=True) args = parser.parse_args() assert os.path.exists(args.network), "" if not os.path.exists(args.network): print "File given by --network not found." sys.exit(128) if not os.path.exists(args.tree): print "File given by --tree not found." sys.exit(128) graph = fh.load_from_edge_list(args.network) filename = "%s.%s" % (args.network, "apsp") if os.path.exists(filename): D = numpy.loadtxt(filename, delimiter=",") # print "Loaded from file." else: D = apsp.get_distance_matrix_from_graph(graph, filename) # pprint(D) tree = fh.load_from_edge_list(args.tree) if not is_spanning_tree(tree): print "Given tree %s is not a spanning tree." % tree
parser = argparse.ArgumentParser() parser.add_argument('--network', required=True) parser.add_argument('--tree', required=True) args = parser.parse_args() assert os.path.exists(args.network), "" if not os.path.exists(args.network): print "File given by --network not found." sys.exit(128) if not os.path.exists(args.tree): print "File given by --tree not found." sys.exit(128) graph = fh.load_from_edge_list(args.network) filename = "%s.%s" % (args.network, "apsp") if os.path.exists(filename): D = numpy.loadtxt(filename, delimiter=",") # print "Loaded from file." else: D = apsp.get_distance_matrix_from_graph(graph, filename) # pprint(D) tree = fh.load_from_edge_list(args.tree) if not is_spanning_tree(tree): print "Given tree %s is not a spanning tree." % tree