首页 > 其他分享 >使用nltk去掉英文句子中介词以后的句子

使用nltk去掉英文句子中介词以后的句子

时间:2023-08-19 09:03:17浏览次数:31  
标签:sentence remove nltk 介词 words filtered 句子

import nltk
from nltk.tokenize import word_tokenize
from nltk.tag import pos_tag

nltk.download("punkt")
nltk.download("averaged_perceptron_tagger")

def remove_prepositional_phrases(sentence, prepositions):
    words = word_tokenize(sentence)
    tagged_words = pos_tag(words)
    
    filtered_words = []
    skip_next = False
    
    for i, (word, pos) in enumerate(tagged_words):
        if skip_next:
            skip_next = False
            continue
        
        if pos == "IN" and word.lower() in prepositions:  # 如果词性为介词且在指定的介词列表中
            # 跳过当前介词及其后面的一个单词
            skip_next = True
        else:
            filtered_words.append(word)
    
    filtered_sentence = " ".join(filtered_words)
    return filtered_sentence

input_sentence = "a apple in a desk on a table behind a chair"
prepositions_to_remove = ["in", "on", "behind"]
filtered_sentence = remove_prepositional_phrases(input_sentence, prepositions_to_remove)
print(filtered_sentence)

在这个示例中,我添加了一个名为 prepositions_to_remove 的列表,其中包含你希望去除的介词(例如 "in"、"on"、"behind")。remove_prepositional_phrases 函数现在会检查词性是否为介词且是否在指定的介词列表中,并进行相应处理。

你可以根据需要添加或修改 prepositions_to_remove 列表,以包含你希望去除的所有介词。然后使用这个函数来处理句子,去除指定介词后面的内容。

标签:sentence,remove,nltk,介词,words,filtered,句子
From: https://www.cnblogs.com/chentiao/p/17642013.html

相关文章

  • 高级有深度的英语句子
    高级有深度的句子(永远保持自我和自尊)所谓人生的归位,就是把外在东西变成你内心的力量。Lifeisadreamofalittlelessinconstant.人生是一场稍稍不那么无常的梦而已。Lifeisacontinuouscourseofdeathandrevival.生命是连续不断的死亡与复活。Ifl......
  • 某公司笔试题 - 句子逆序(附python代码)
    #将一个英文语句以单词为单位逆序排放。例如“Iamaboy”,逆序排放后为“boyaamI”,所有单子之间用一个空格隔开,语句中除了英文字母外,不再包含其他字符#数据范围:输入的字符串长度满足1<=n<=1000importrestr1=input("请输入一个英语句子:")#通过正则匹配输入英......
  • nltk.wordnet.WordNetLemmatizer().lemmatize()表示什么意思
    在自然语言处理中,词形还原是将一个单词的各种变体(例如时态、语态、数等)还原为其基本词形或词根形式的过程。NLTK(自然语言工具包)是一个常用的Python库,它提供了用于文本处理和语言分析的工具。nltk.wordnet.WordNetLemmatizer()是NLTK中的一个词形还原器类,用于将单词转换为它们......
  • python 应用包nltk了解
    NLTK(NaturalLanguageToolkit)是一个用于自然语言处理(NLP)的Python库。它为处理和分析人类语言数据提供了许多工具和接口。NLTK包含了一系列用于文本处理、分析、语言学研究以及机器学习的函数和类。NLTK提供了许多功能,包括:1.文本处理:NLTK提供了处理文本的工具,如分词......
  • NLTK 使用指南
    NLTK安装pip3installnltkNLTK数据下载代码中下载importnltknltk.download()手工下载https://www.nltk.org/nltk_data/根据需要,进行下载。NLTK使用......
  • NLP句子相似性方法总结及实现
    目录1、基于Word2Vec的余弦相似度2、TextRank算法中的句子相似性3、莱文斯坦距离(编辑距离)4、莱文斯坦比5、汉明距离6、Jaro距离(JaroDistance)7、Jaro-Winkler距离(Jaro-WinklerDistance)8、基于Doc2Vec的句子相似度计算1、基于Word2Vec的余弦相似度首先对句子分词,使用Gens......
  • 100条修身养性的句子
    100条修身养性的句子1.择善人而交,择善书而读,择善言而听,择善行而从。­2.一个人的快乐,不是因为他拥有的多,而是因为他计较的少。­3.生气,就是拿别人的过错来惩罚自己。原谅别人,就是善待自己。­4.未必钱多乐便多,财多累己招烦恼。清贫乐道真自在,无牵无挂乐逍遥。­5.郊......
  • 教师节我用Python分析了336个赞美老师的句子,满满的幸福和开心
    首先祝天下所有老师教师节快乐!今天收到了很多微信、QQ、短信的祝福,有以前的学生发的,有现在的学生发的,有同事发的,有领导发的,有企业朋友发的。字里行间都洋溢着快乐和对教师这两个字的尊重!一一回复完信息之后,深感自己辞藻不够华丽,然后就在网上搜索了一些赞美教师的句子学习学习,学习之......
  • 12万短文学网句子内容大全ACCESS数据库
    闲来无事,看到“短文学网”文章内容还算整洁,而且非常容易进行采集,于是也就手痒了弄了一下,速度非常快可能与网络没有大量广告啊、JS啊有关。详细的分类信息如下:qq日志包含有:qq空间(2098)条、非主流日(180)条、搞笑日志(132)条、个性日志(204)条、经典日志(260)条、空间文字(848)......
  • 3万5千英语句子英语例句大全ACCESS\EXCEL数据库
    在学习英语的过程中可能会发现没有比较适合自己的英语学习软件,适合你的软件不一定适合我,竟毕每个人的学习方法不尽相同。这个数据库收集了40多个课程,35000多个句子。是学习英语的必备资料。分类表:包含电话英语、旅游英语、求职英语、商务英语、社交英语、洋话连篇、走遍美国、灵......