Python 如何在numpy数组中找到相同的实体?

Python 如何在numpy数组中找到相同的实体?,python,numpy,Python,Numpy,我使用polyglot库进行命名实体识别,并将结果存储在numpy数组中。现在,这两个numpy数组的元素彼此不匹配 REL_LIST = np.array(['ریس جمهور', 'تولد', 'استاد', 'کارمند', 'ریس']) SENT_LIST = np.array(['رئیس جمهور محمد اشرف غنی تاکید ورزیده که حکومت افغانستان نباید در گفتگو های صلح در حاشیه رانده شود.

我使用polyglot库进行命名实体识别,并将结果存储在numpy数组中。现在,这两个numpy数组的元素彼此不匹配

REL_LIST = np.array(['ریس جمهور', 'تولد', 'استاد', 'کارمند', 'ریس'])
SENT_LIST = np.array(['رئیس جمهور محمد اشرف غنی تاکید ورزیده که حکومت افغانستان نباید در گفتگو های صلح در حاشیه رانده شود.'])
FINAL_NER_LIST =[]

for sent in range(len(SENT_LIST)):
    list = SENT_LIST[sent].entities
    FINAL_NER_LIST.append(list)
    for rel in range(len(REL_LIST)):
        if REL_LIST[rel] in SENT_LIST:
            FINAL_NER_LIST.extend(REL_LIST[rel])
我的目的是检查
SENT\u LIST
中是否有
REL\u LIST
的任何实体,polyglot-NER的输出如下:

[[I-PER(['محمد', 'اشرف']) I-LOC(['افغانستان'])]
[I-LOC(['میونیخ', 'جرمنی']) I-PER(['عبدالعزیز'])]
[I-PER(['اشرف']) I-LOC(['کابل'])]
[I-PER(['اشرف', 'غنی']) I-LOC(['افغانستان'])]]

也许我仍然不明白这个问题,但也许像这样的事情会奏效

NEW_LIST = []
for sentence in SENT_LIST:
    NEW_LIST.append([sentence.entities])
    for rel in REL_LIST:
        if rel in sentence:
            NEW_LIST[-1].append(rel)

NEW\u LIST
将是一个与
SENT\u LIST
长度相同的列表。每个条目将首先包含实体,然后是关系。

也许我仍然不理解这个问题,但也许类似的东西会起作用

NEW_LIST = []
for sentence in SENT_LIST:
    NEW_LIST.append([sentence.entities])
    for rel in REL_LIST:
        if rel in sentence:
            NEW_LIST[-1].append(rel)

NEW\u LIST
将是一个与
SENT\u LIST
长度相同的列表。每个条目将首先包含实体,然后包含关系。

预期结果是什么?还有
SENT_LIST
REL_LIST
之间的区别是什么?
SENT_LIST
是一个文件中所有句子的列表
REL_LIST
是一个包含关系的列表,我通过实现
polyglot
SENT_LIST
中提取了这些关系。现在我想在每个句子中检查
REL\u LIST
中的任何元素是否在
SENT\u LIST
中,是否应该插入
NER\u LIST
,以显示两个实体之间的关系,例如,
CEO(微软比尔·盖茨)
。在这里,
CEO
REL\u LIST
中,正如它出现在
SENT\u LIST
的第一句话中一样,我想在
NER\u LIST
的第一个元素中添加预期结果是什么?还有
SENT_LIST
REL_LIST
之间的区别是什么?
SENT_LIST
是一个文件中所有句子的列表
REL_LIST
是一个包含关系的列表,我通过实现
polyglot
SENT_LIST
中提取了这些关系。现在我想在每个句子中检查
REL\u LIST
中的任何元素是否在
SENT\u LIST
中,是否应该插入
NER\u LIST
,以显示两个实体之间的关系,例如,
CEO(微软比尔·盖茨)
。在这里,
CEO
位于
REL_LIST
中,正如它出现在
SENT_LIST
的第一句话中一样,我想添加到
NER_LIST
LEN_SENT=0 word=0的第一个元素中,而您共享的word正在工作,但没有附加到特定的实体上。我的意思是一个索引被共享给所有实体我看到了问题,但是如果有两个人实体,程序如何知道将REL_列表中的值分配给哪个实体?此信息不在列表中。您是对的,但为此,我将使用TFIDF和权重向量仅对最著名的一个进行赋值。这就是为什么我现在只研究实体对。当它完成后,我将使用机器学习。感谢您
LEN_SENT=0 word=0,您共享的代码正在运行,但未附加到特定实体上。我的意思是一个索引被共享给所有实体我看到了问题,但是如果有两个人实体,程序如何知道将REL_列表中的值分配给哪个实体?此信息不在列表中。您是对的,但为此,我将使用TFIDF和权重向量仅对最著名的一个进行赋值。这就是为什么我现在只研究实体对。当它完成后,我将使用机器学习。非常感谢。