码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • NLTK进行文本清洗并进行词性标注


    import pandas as pd
    import re
    import nltk
    from nltk import word_tokenize, pos_tag
    from nltk.corpus import stopwords

    # 下载NLTK的停用词和词性标注所需的资源
    nltk.download('stopwords')
    nltk.download('punkt')
    nltk.download('averaged_perceptron_tagger')

    # 读取停用词表
    with open('en_stopwords.txt', 'r') as f:
        stopwords_set = set(f.read().splitlines())

    # 读取Excel文件
    df = pd.read_excel('原始新闻合并.xlsx', usecols=['content'])

    # 定义文本清洗和词性标注函数
    def clean_and_tag(text):
        # 检查text是否为字符串,如果不是则转换为字符串
        if isinstance(text, str):
            # 去除HTML标签
            cleaned_text = re.sub(r'<.*?>', '', text)
            # 去除多余空格和换行符
            cleaned_text = re.sub(r'\s+', ' ', cleaned_text)
            # 分词
            words = word_tokenize(cleaned_text)
            # 去除停用词
            filtered_words = [word.lower() for word in words if word.lower() not in stopwords_set]
            # 词性标注
            tagged_words = pos_tag(filtered_words)
            # 将词汇和词性标签拼接为字符串
            tagged_text = ' '.join([f"{word}/{tag}" for word, tag in tagged_words])
            return tagged_text
        else:
            # 如果text不是字符串,返回空字符串或者其他你认为合适的默认值
            return ''

    # 对每条新闻内容进行文本清洗和词性标注
    df['cleaned_content'] = df['content'].apply(clean_and_tag)

    # 将清洗后的文本保存到Excel文件
    df['cleaned_content'].to_excel('清洗后的文本.xlsx', index=False)

    # 输出清洗后的文本内容
    print("清洗后的文本已保存到 '清洗后的文本.xlsx' 文件。")
     

  • 相关阅读:
    分布式下的 ID 实现
    【MySQL】存储引擎
    基于seata实现分布式事务实现订单服务 + 账户服务 + 商品库存服务之间的分布式事务
    Shiro实现多realm方案
    C语言字符串中【数组形式】和【指针形式】不同之处
    探讨javascript的程序性能
    python自带静态web服务器搭建代码实现(一)
    代码随想录算法训练营第59天|● 503.下一个更大元素II ● 42. 接雨水
    LeetCode二叉树系列——199二叉树的右视图
    《动机与人格》笔记(二)——认识和理解的欲望
  • 原文地址:https://blog.csdn.net/weston95/article/details/134083104
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号