예제 #1
0
def rank_author():
    ac_net = AuthorCitationNetwork()
    ac_net_m, ac_net_list = ac_net.make_matrix()
    print("Caculate pagerank...")
    ac_net_pgr = PageRank(ac_net_m)
    ac_net_pr = ac_net_pgr.caculate("author_iter.txt", m_d=1e-5)
    ac_net_results = list(zip(ac_net_list, ac_net_pr.tolist()))
    ac_net_results.sort(key=itemgetter(1), reverse=True)
    results = []
    for result in ac_net_results:
        results.append(str(result[0][1]) + "  " + str(result[1][0]) + "\n")
    # results.sort(key=itemgetter(2),reverse=True)
    print("Writing results...")
    f = open("2014/results/author.txt", 'w')
    # f.writelines(str(ac_net_results))
    f.writelines(str(results))
예제 #2
0
def rank_paper():
    pp_net = PaperCitationNetwork()
    pp_net_m, pp_net_list = pp_net.make_matrix()
    print("Caculating pagerank...")
    pp_net_pgr = PageRank(pp_net_m)
    pp_net_pr = pp_net_pgr.caculate("paper_iter.txt", m_d=1e-7)
    pp_net_results = list(zip(pp_net_list, pp_net_pr.tolist()))
    pp_net_results.sort(key=itemgetter(1))
    results = []
    for result in pp_net_results:
        results.append(str(result[0][1]) + "  " + str(result[1][0]) + "\n")
    # results.sort(key=lambda x:-1*x[2])
    # printer=[]
    # for r in results:
    #     printer.append(str(r[1])+"  "+str(r[2])+"\n")
    print("Writing results...")
    f = open("2014/results/paper.txt", 'w')
    f.writelines(str(results))
예제 #3
0
def rank_venue():
    vn_net = VenueCitationNetwork()
    vn_net_m, vn_net_list = vn_net.make_matrix()
    print("Caculating pagerank...")
    vn_net_pgr = PageRank(vn_net_m)
    vn_net_pr = vn_net_pgr.caculate("venue_iter.txt", m_d=1e-7)
    vn_list = []
    for vn in vn_net_list:
        vn_list.append(vn[0:2])
    vn_net_results = list(zip(vn_list, vn_net_pr.tolist()))
    vn_net_results.sort(key=itemgetter(1), reverse=True)
    # ac_net_results.sort(key=lambda x:-1*x[1])
    results = []
    for result in vn_net_results:
        results.append(
            str(result[0][0]) + "  " + str(result[0][1]) + "   " +
            str(result[1][0]) + "\n")
    f = open("2014/results/venue.txt", 'w')
    # f.writelines(str(vn_net_results))
    f.writelines(results)
    print("Writing results...")