|
@@ -55,21 +55,28 @@ def dendro(lobj, clustdf, numclusts, icps, fname):
|
55
|
55
|
|
56
|
56
|
def main():
|
57
|
57
|
parser = ArgumentParser(description='Cluster from pre-existing distance correlation matrix in pickled dataframe')
|
58
|
|
- parser.add_argument("-i", "--input", dest="input", help = "input pickle path; default: ../data/5kdcorrmatrix.pkl", metavar="PATH", default = "../data/5kdcorrmatrix.pkl")
|
59
|
|
- parser.add_argument("-o", "--output", dest="output", help = "output pickle path; default: ../data/5kdclustable.pkl", metavar="PATH", default = "../data/5kdclustable.pkl")
|
|
58
|
+ parser.add_argument("-i", "--input", dest="input", help = "input pickle path", metavar="PATH", required = True)
|
|
59
|
+ parser.add_argument("-o", "--output", dest="output", help = "output pickle path", metavar="PATH", required = True)
|
60
|
60
|
parser.add_argument("--method", dest="method", help = "clustering method; default 'ward'", metavar = "METHOD", default = "ward")
|
61
|
61
|
parser.add_argument("--clusters", dest="numclusters", help = "number of clusters; default: 9", metavar = "NUM", default = 9, type = int)
|
62
|
62
|
parser.add_argument("-d", "--dendrogram", dest = "incdendro", help = "draw dendrogram", action ="store_true")
|
63
|
|
- parser.add_argument("-t", "--tree", dest="treepath", help="Filename for dendrogram (if -d), default: ../img/59-9-dendro.png", metavar="PATH", default = "../img/5k-9-dendro.png")
|
|
63
|
+ parser.add_argument("-t", "--tree", dest="treepath", help="Filename for dendrogram (if -d)", metavar="PATH")
|
|
64
|
+ parser.add_argument("-v", "--verbose", dest = "verbose", action ="store_true")
|
64
|
65
|
args = parser.parse_args()
|
65
|
66
|
|
66
|
|
- print("Clustering")
|
|
67
|
+ if args.incdendro and args.treepath is None:
|
|
68
|
+ parser.error("-d/--dendrogram requires -t/--tree PATH")
|
|
69
|
+
|
|
70
|
+ if args.verbose:
|
|
71
|
+ print("Clustering")
|
|
72
|
+
|
67
|
73
|
sourcep = p.read_pickle(args.input)
|
68
|
74
|
l, c = cluster(sourcep, args.method, args.numclusters)
|
69
|
75
|
c.to_pickle(args.output)
|
70
|
76
|
|
71
|
|
- print("Drawing dendrogram")
|
72
|
77
|
if args.incdendro:
|
|
78
|
+ if args.verbose:
|
|
79
|
+ print("Drawing dendrogram")
|
73
|
80
|
icps = sourcep.index.values
|
74
|
81
|
dendro(l, c, args.numclusters, icps, args.treepath)
|
75
|
82
|
|