Пример #1
0
def set2(main_seed_list,all_nodes,candidate_list_one,candidate_list_two,G,iterations):
    print "Set 2..."
    path_to_save = "result/set2/scores/rwr_result_set2_"
    
    
    print "Selecting same degree nodes"
    
    same_degree_nodes=[]
    while len(same_degree_nodes)<5:
        node = random.choice(all_nodes)
        for i in main_seed_list:
            if G.degree(node)==G.degree(i):
                same_degree_nodes.append(node)
                break
    print "Got the same degree nodes"
    candidate_list=candidate_list_one+same_degree_nodes
    seed_list = [x for x in same_degree_nodes if x not in main_seed_list]
    print "Got candidate list and seed list\n Will now run RWR"

    wk = Walker(G)
    wk.run_walker(seed_list,0.7,candidate_list,path_to_save,iterations)

    print "Successfully run RWR and saved scores\n Will now save the 5 genes"

    fp = open("result/set2/genes/gene_"+str(iterations)+".txt","w")
    for i in same_degree_nodes:
        fp.write(i+"\n")
    print "Done saving now returning"
Пример #2
0
def set1(main_seed_list, candidate_list_one, candidate_list_two, G,
         iterations):

    #path where to save the scores
    path_to_save = "result/rwr/set1/scores/rwr_result_set1_"

    #creating the candidate list
    candidate_list = candidate_list_one + candidate_list_two
    #creating seed list after filtering out the 5 genes from the main seed list

    seed_list = []
    for i in main_seed_list:
        flag = False
        for j in candidate_list:
            if i == j:
                flag = True
                break
        if flag == False:
            seed_list.append(i)
    print "set 1 seed = " + str(len(seed_list))
    print "Will now run RWR"
    wk = Walker(G)
    wk.run_walker(seed_list, 0.7, candidate_list, path_to_save, iterations)
    print "Successfully run RWR and saved scores\n Will now save the 5 genes"

    #for saving the 5 disease associated genes
    fp = open("result/rwr/set1/genes/gene_" + str(iterations) + ".txt", "w")
    for i in candidate_list_two:
        fp.write(i + "\n")

    print "Done saving now returning"
    return
Пример #3
0
def set2(main_seed_list,candidate_list_one,candidate_list_two,hist_seed_list,G,iterations):
    path_to_save = "result/rwr/set2/scores/rwr_result_set2_"
    
    candidate_list = candidate_list_one+candidate_list_two
    same_degree_nodes = candidate_list_two
    print "Got candidate list and seed list\n Will now run RWR for set2"

    wk = Walker(G)
    wk.run_walker(main_seed_list,0.7,candidate_list,path_to_save,iterations)

    ranks = []
    for z in same_degree_nodes:
        flag=False
        result_file = pd.read_csv("result/rwr/set2/scores/rwr_result_set2_"+str(iterations)+".txt",delim_whitespace="",header=None)
        result_file = list(result_file[0])
        for i in range(len(result_file)):
            if z == result_file[i]:
                flag=True
                break
        if flag == True:
            ranks.append(i)



    print "Successfully run RWR and saved scores\n Will now save the 5 genes for set2"

    fp = open("result/rwr/set2/genes/gene_"+str(iterations)+".txt","w")
    

    for i in range(len(same_degree_nodes)):
        fp.write(hist_seed_list[i]+","+same_degree_nodes[i]+","+str(ranks[i])+"\n")

    fp.close()
    print "Done saving now returning for set2"
Пример #4
0
def set1(main_seed_list, candidate_list_one, candidate_list_two, G,
         iterations):
    print "Set 1..."

    rprob = 0.1
    while rprob <= 0.9:
        path_to_save = "result/" + str(iterations + 1) + "/rprob_"

        candidate_list = candidate_list_one + candidate_list_two
        seed_list = []
        for i in main_seed_list:
            flag = False
            for j in candidate_list:
                if i == j:
                    flag = True
                    break
            if flag == False:
                seed_list.append(i)
        print "Will now run RWR"
        wk = Walker(G)
        wk.run_walker(seed_list, rprob, candidate_list, path_to_save, rprob)
        print "Successfully run RWR and saved scores\n Will now save the 5 genes"

        rprob += 0.1
    fp = open("result/" + str(iterations + 1) + "/gene.txt", "w")
    for i in candidate_list_two:
        fp.write(i + "\n")
    print "Returning"
Пример #5
0
def set1_swapped(main_seed_list,candidate_list_one,candidate_list_two,G,iteration):
    path_to_save = "result/rwr/edge_swap_result/edge_swap/set1/scores/rwr_result_set1_"

    candidate_list = candidate_list_one+candidate_list_two

    seed_list = []
    for i in main_seed_list:
        flag = False
        for j in candidate_list:
            if i==j:
                flag = True
                break
        if flag==False:
            seed_list.append(i)
    print "Running RWR for Set1_EdgeSwap"
    
    wk = Walker(G)
    wk.run_walker(seed_list,0.7,candidate_list,path_to_save,iteration)
    print "RWR done for set1-edge swapped"

    fp = open("result/rwr/edge_swap_result/original/set1/genes/gene_"+str(iteration)+".txt","w")
    for i in candidate_list_two:
        fp.write(i+"\n")
    fp.close()

    print "Done saving genes for Set1_edge_swapped"
    return
Пример #6
0
def set2_swapped(main_seed_list,candidate_list_one,same_degree_nodes,G,iteration):
    path_to_save = "result/rwr/edge_swap_result/edge_swap/set2/scores/rwr_result_set2_"

    candidate_list = candidate_list_one+same_degree_nodes

    print "Running rwr for set2_swapped"
    wk = Walker(G)
    wk.run_walker(main_seed_list,0.7,candidate_list,path_to_save,iteration)

    ranks = []
    for z in same_degree_nodes:
        flag = False
        result_file = pd.read_csv("result/rwr/edge_swap_result/edge_swap/set2/scores/rwr_result_set2_"+str(iteration)+".txt",delim_whitespace="",header=None)
        result_file = list(result_file[0])
        for i in range(len(result_file)):
            if z==result_file[i]:
                flag = True
                break
        if flag == True:
            ranks.append(i)
    print "RWR Done for set2-edgeswapped"
    fp = open("result/rwr/edge_swap_result/edge_swap/set2/genes/gene_"+str(iteration)+".txt","w")
    for i in range(len(same_degree_nodes)):
        fp.write(hist_seed_list[i]+","+same_degree_nodes[i]+","+str(ranks[i])+"\n")
    print "Done Writing..."
    return
Пример #7
0
def set2_original(main_seed_list,all_nodes,candidate_list_one,G,iteration):
    path_to_save = "result/rwr/edge_swap_result/original/set2/scores/rwr_result_set2_"

    print "Selecting same degree nodes"

    candidate_list = list(candidate_list_one)
    hist_seed_list = []
    same_degree_nodes = []

    while len(candidate_list)<=99:
        hist = random.choice(main_seed_list)
        deg_match = sr.ret_same_deg(hist)
        flag1 = False
        flag2 = False
        for node in candidate_list:
            if node == deg_match:
                flag1 = True
                break
        for node in hist_seed_list:
            if node == hist:
                flag2 = True
                break
        if flag1==False and flag2==False:
            hist_seed_list.append(hist)
            same_degree_nodes.append(deg_match)
            candidate_list.append(deg_match)

    for i in range(len(same_degree_nodes)):
        print str(hist_seed_list[i])+" "+str(G.degree(hist_seed_list[i]))+" "+str(same_degree_nodes[i])+" "+str(G.degree(same_degree_nodes[i]))

    print "Running RWR for Set2_original"
    wk = Walker(G)
    wk.run_walker(main_seed_list,0.7,candidate_list,path_to_save,iteration)

    ranks = []
    for z in same_degree_nodes:
        flag = False
        result_file = pd.read_csv("result/rwr/edge_swap_result/original/set2/scores/rwr_result_set2_"+str(iteration)+".txt",delim_whitespace="",header=None)
        result_file = list(result_file[0])
        for i in range(len(result_file)):
            if z == result_file[i]:
                flag = True
                break
        if flag == True:
            ranks.append(i)

    print "Ran RWR and saved scores. Will now save gene list for Set2_original"

    fp = open("result/rwr/edge_swap_result/original/set2/genes/gene_"+str(iteration)+".txt","w")
    for i in range(len(same_degree_nodes)):
        fp.write(hist_seed_list[i]+","+same_degree_nodes[i]+","+str(ranks[i])+"\n")
    print "done writing.."
    return hist_seed_list,same_degree_nodes
Пример #8
0
def set3(hist_seed_list, same_degree_nodes, candidate_list_one, seed_list,
         iterations):
    candidate_list = hist_seed_list + same_degree_nodes + candidate_list_one
    path_to_save = "result/rwr/set3/scores/rwr_result_set3_"
    wk = Walker(G)
    wk.Walker(seed_list, 0.7, candidate_list, path_to_save, iterations)

    ranks1 = []
    for x in same_degree_nodes:
        flag = False
        result_file = pd.read_csv("result/rwr/set3/rwr_result_set3_" +
                                  str(iterations) + ".txt",
                                  delim_whitespace="",
                                  header=None)
        col1 = result_file[0]
        col2 = result_file[1]
        for i in range(len(result_file)):
            if x == col1[i]:
                flag = True
                break
        if flag == True:
            ranks.append(col2[i])

    ranks2 = []
    for x in hist_seed_list:
        flag = False
        result_file = pd.read_csv("result/rwr/set3/rwr_result_set3_" +
                                  str(iterations) + ".txt",
                                  delim_whitespace="",
                                  header=None)
        col1 = result_file[0]
        col2 = result_file[1]
        for i in range(len(result_file)):
            if x == col1[i]:
                flag = True
                break
        if flag == True:
            ranks2.append(col2[i])

    fp = open("result/rwr/set3/genes/gene_" + str(iterations) + ".txt", "wb")
    for i in range(len(same_degree_nodes)):
        fp.write(
            str(hist_seed_list[i]) + "," + str(ranks1[i]) + "," +
            str(same_degree_nodes[i]) + "," + str(ranks2[i]) + "\n")
Пример #9
0
def set3(main_seed_list,all_nodes,candidate_list_one,G,iterations):
    print "Set 3..."
    path_to_save = "result/set3/scores/rwr_result_set3_"

    print "selecting random genes"

    candidate_list_two = random.sample(all_nodes,5)
    candidate_list = candidate_list_one+candidate_list_two
    seed_list = [x for x in candidate_list_two if x not in main_seed_list]

    print "Will now run RWR"

    wk = Walker(G)
    wk.run_walker(seed_list,0.7,candidate_list,path_to_save,iterations)

    print "Successfully run RWR and saved scores\n Will now save the 5 genes"

    fp = open("result/set3/genes/gene_"+str(iterations)+".txt","w")

    for i in candidate_list_two:
        fp.write(i+"\n")

    print "Done saving now returning"
Пример #10
0
def set1(main_seed_list,candidate_list_one,candidate_list_two,G,iterations):
    print "Set 1..."

    #path where to save the scores
    path_to_save = "result/set1/scores/rwr_result_set1_" 
    
    #creating the candidate list
    candidate_list = candidate_list_one + candidate_list_two
    #creating seed list after filtering out the 5 genes from the main seed list
    seed_list = [x for x in candidate_list_two if x not in main_seed_list]

    print "Will now run RWR"
    wk = Walker(G)
    wk.run_walker(seed_list,0.7,candidate_list,path_to_save,iterations)
    print "Successfully run RWR and saved scores\n Will now save the 5 genes"
    
    #for saving the 5 disease associated genes
    fp = open("result/set1/genes/gene_"+str(iterations)+".txt","w")
    for i in candidate_list_two:
        fp.write(i+"\n")
    
    
    print "Done saving now returning"
    return
Пример #11
0
import pandas as pd
import networkx as nx
from rwr import Walker

candidate_list_temp = pd.read_csv("candidate_list.txt",delim_whitespace="",header=None)
candidate_list_temp = candidate_list[0]
candidate_list_one = random.sample(candidate_list_temp,98)
candidate_list_two = ['DRD4','DAO']

candidate_list = candidate_list_one+candidate_list_two

seed_list = pd.read_csv("seed_list.txt",delim_whitespace="",header=None)
seed_list = seed_list[0]

G = nx.read_gpickle("HPRD-Biogrid.pkl")
rprob = 0.1
wk = Walker(G)
while rprob<1.0:
    print rprob
    wk.run_walker(seed_list,rprob,candidate_list,"result/rprob_",rprob)
    rprob+=0.1