def main(): centrality_data_folder = sys.argv[1] input_file_prefix = sys.argv[2] output_file = sys.argv[3] metric = sys.argv[4] intervals = ccfcr.load_json(centrality_data_folder) out_file = open(output_file, 'w') day = 0 top_list_prev = [] top_list = [] ret_sort = [] num_nodes = 1 for inter in intervals["centrality_test"]["intervals"]: print("[ day = " + str(day) +" ]") if inter["interval"]["graph_stat"]["num_nodes"] != 0: top_list, ret_sort = pre_proc(centrality_data_folder + "/centrality_scores", input_file_prefix, day) num_prev_nodes = num_nodes num_nodes = inter["interval"]["graph_stat"]["num_nodes"] else: #out_file.write(str(inter["interval"]["time"]["start"])+" - - 0 -1.0 -1.0\n") out_file.write(str(day)+" - - 0 -1.0 -1.0\n") day+=1 continue if day != 0: #centralities = [str(inter["interval"]["time"]["start"])] centralities = [str(day)] centralities += compute(top_list_prev, top_list, ret_sort, metric) num_new_nodes = inter["interval"]["graph_stat"]["new_nodes"] num_deleted_nodes = inter["interval"]["graph_stat"]["deleted_nodes"] centralities.append(num_nodes) centralities.append(float(num_new_nodes) / num_nodes) centralities.append(float(num_deleted_nodes) / num_prev_nodes) ccfcr.write_out(out_file, centralities) day+=1 top_list_prev = top_list
def main(): intervals = load_json(sys.argv[1]) preproc_folder = sys.argv[2] file_prefix = sys.argv[3] out_file = open(sys.argv[4], 'w') from_interval = int(sys.argv[5]) to_interval = int(sys.argv[6]) day = 0 num_nodes = 1 for inter in intervals["centrality_test"]["intervals"]: if inter["interval"]["graph_stat"]["num_nodes"] != 0: num_prev_nodes = num_nodes num_nodes = inter["interval"]["graph_stat"]["num_nodes"] else: if (from_interval <= day) and (day <= to_interval): out_file.write(str(day)+" - -\n") day+=1 continue if (day != 0) and (from_interval <= day) and (day <= to_interval): print("[ day = " + str(day) +" ]") #centralities = [str(inter["interval"]["time"]["start"])] centralities = [str(day)] centralities += load_partial_results(preproc_folder + "/" + file_prefix, day) num_new_nodes = inter["interval"]["graph_stat"]["new_nodes"] num_deleted_nodes = inter["interval"]["graph_stat"]["deleted_nodes"] #centralities.append(num_nodes) #centralities.append(float(num_new_nodes) / num_nodes) #centralities.append(float(num_deleted_nodes)/ num_prev_nodes) ccfcr.write_out(out_file, centralities) day+=1
ret_sort = [] intervals_list = intervals["centrality_test"]["intervals"] for day in range(from_interval, to_interval+1): print("[ day = " + str(day) +" ]") if intervals_list[day]["interval"]["graph_stat"]["num_nodes"] != 0: if rank_type == "centrality": top_list_other, ret_sort_other = ccfcr.pre_proc(baseline_folder, file_prefix + "_baseline" + baseline_type, day) # for baseline top_list, ret_sort = ccfcr.pre_proc(centrality_folder + "/centrality_scores", file_prefix, day) # for origi elif rank_type == "pos": top_list_other, ret_sort_other = ccfpr.pre_proc(baseline_folder, file_prefix + "_baseline" + baseline_type, day) # for baseline top_list, ret_sort = ccfpr.pre_proc(centrality_folder + "/centrality_scores", file_prefix, day) # for origi else: print "rank_type must be 'centrality' or 'pos'!!!" else: out_file.write(str(day)+" - -\n") continue #print top_list_other #print #print top_list if day != 0: centralities = [str(day)] if rank_type == "centrality": centralities += ccfcr.compute(top_list_other, top_list, ret_sort, metric) elif rank_type == "pos": centralities += ccfpr.compute(top_list_other, top_list, ret_sort, metric) else: print "rank_type must be 'centrality' or 'pos'!!!" ccfcr.write_out(out_file, centralities) else: print 'Usage: <baseline_folder> <original_input_file_folder> <file_prefix> <baseline_type> <from_interval> <to_interval> <centrality/pos> <kendall/corr> <output_file>'