擅长:python、mysql、java
<p>根据粘贴在评论中的链接,您正在尝试循环浏览所有可用的疾病名称,以在给定的单词段落中查找疾病。我建议您循环阅读段落中的单词,并在数据框中找到匹配项</p>
<p>您可以尝试执行以下步骤</p>
<ol>
<li><p>将nltk_标记拆分为单词列表,并将其命名为nltk_标记_单词</p>
</li>
<li><p>您可以使用诸如match&;之类的DF字符串过滤器,而不是在整个数据帧中循环查找给定单词列表中的匹配行;包含。这将减少整个DF的循环</p>
<p><code>filtered_rows = (df1['name'].str.contains(string) for string in nltk_tokens_words)</code></p>
</li>
<li><p>使用np和apply创建一个组合标记,以获得过滤后的DF</p>
<p><code>combined_mask = np.vstack(filtered_rows).all(axis=0)</code></p>
<p><code>df1[combined_mask]</code></p>
</li>
<li><p>对第二个DF重复相同的步骤</p>
</li>
</ol>
<p>试试这个,让我知道这是否对你有帮助</p>