Exemplo n.º 1
0
def rungraphorg(line,display_name='SemanticNet'):
    semantic_net = Graph()
    line = np.array(pd.Series(line).reset_index())
    for node2node in line:  
            semantic_net.add_edge(node2node[0], node2node[2], type=node2node[1],weight = node2node[3])
    semantic_net.export(display_name, directed=True, weighted=0.3)
    webbrowser.open('file://' + os.path.realpath(display_name+'/index.html'))
Exemplo n.º 2
0
def rungraph3(line,display_name='SemanticNet'):
    semantic_net = Graph()
    line = pd.Series(line).reset_index()
    line.columns = ['s','v','o','weight']
    s_count = line['s'].value_counts()
    o_count = line['o'].value_counts()
    line = np.array(line)
    for node2node in line:  
        if (node2node[0] in total and node2node[2] in total) or (s_count[node2node[0]] > 1 and o_count[node2node[2]] > 1):
            semantic_net.add_edge(node2node[0], node2node[2], type=node2node[1],weight = node2node[3])
    semantic_net.export(display_name, directed=True, weighted=0.3)
    webbrowser.open('file://' + os.path.realpath(display_name+'/index.html'))
Exemplo n.º 3
0
        best_o, best_o_dist = '', 100
        for (o, o_index) in o_tuple:
            o_dist = abs(best_v_index - o_index)
            if o_dist < best_o_dist:
                best_o = o
                best_o_dist = o_dist

        best_svo.append((s, best_v, best_o))

    return best_svo


# ***** Main Functions for Creating Semantic Network in English ***** #

semantic_net = Graph()

nlp = spacy.load("en_core_web_sm")
SUBJ = ["nsubj", "nsubjpass"]
VERB = ["ROOT"]
OBJ = ["dobj", "pobj", "dobj"]
modifier = [
    'amod', 'nounmod', 'nummod', 'quantmod', 'compound', 'relcl', 'neg',
    'advmod'
]

stopwords = open('/users/emilywang/shihao yang/stopword.txt').read().split(
    '\n')  # 自定义去除词库
stopwords.append("\n")

text = open('/users/emilywang/shihao yang/beef_english.txt').read()