python基于百度,哈工大等停用表进行的中文分词

python 复制代码
import os
import pandas as pd
import jieba


# 加载停用词
def load_stopwords(filenames):
    stopwords = set()
    for filename in filenames:
        with open(filename, 'r', encoding='utf-8') as f:
            for line in f:
                stopwords.add(line.strip())
    return stopwords


# 中文分词并去除停用词
def segment_and_remove_stopwords(text, stopwords):
    words = jieba.cut(text)
    filtered_words = [word for word in words if word not in stopwords and len(word) > 1]
    return ' '.join(filtered_words)


# 处理评论数据
def process_comments(df, comment_column, stopwords):
    df['connected_words'] = df[comment_column].apply(lambda x: segment_and_remove_stopwords(x, stopwords))
    return df


# 主函数
def main(input_file_path, output_file_path, comment_column, stopwords_files=[]):
    # 加载停用词
    stopwords = load_stopwords(stopwords_files)

    # 读取CSV文件
    df = pd.read_csv(input_file_path, encoding='utf-8')

    # 处理评论数据
    processed_df = process_comments(df, comment_column, stopwords)

    # 保存处理后的数据到新的CSV文件
    processed_df.to_csv(output_file_path, index=False, encoding='utf-8-sig')

    print(f"数据预处理完成,已保存到 {output_file_path}")



if __name__ == '__main__':
    input_file_path = r"D:\pycharm\爬虫案列\24.汽车之家\_0_10.csv"  # 你的CSV文件路径
    output_file_path = 'comments_processed.csv'  # 输出文件的路径
    comment_column = '空间'  # 假设评论数据在'comment'列中

    # 停用词文件列表,确保这些文件在你的工作目录中
    stopwords_files = [
        r"stopwords-master\baidu_stopwords.txt",
        r"stopwords-master\cn_stopwords.txt",
        r"stopwords-master\hit_stopwords.txt",
        r"stopwords-master\scu_stopwords.txt",
        # ... 其他停用词文件
    ]

    # 确保所有停用词文件都存在
    for filename in stopwords_files:
        if not os.path.exists(filename):
            print(f"Stopwords file {filename} not found.")
            exit(1)

            # 调用主函数处理评论数据
    main(input_file_path, output_file_path, comment_column, stopwords_files)

停用词表可以去看一下博主的上传的资源 , 可以免费获取的

相关推荐
weixin_4707403620 分钟前
某算法的python执行汇编
汇编·python·算法
海绵宝宝汉堡包1 小时前
c# 项目 文件夹
开发语言·c#
mit6.8243 小时前
[RestGPT] docs | RestBench评估 | 配置与环境
人工智能·python
Ice__Cai4 小时前
Flask 之 Cookie & Session 详解:用户状态管理
后端·python·flask·cookie·session
曹牧4 小时前
C#:窗体间传值
c#
WSSWWWSSW5 小时前
Seaborn数据可视化实战:Seaborn时间序列可视化入门
python·信息可视化·数据分析·matplotlib·seaborn
云天徽上6 小时前
【数据可视化-96】使用 Pyecharts 绘制主题河流图(ThemeRiver):步骤与数据组织形式
开发语言·python·信息可视化·数据分析·pyecharts
codeyanwu6 小时前
nanoGPT 部署
python·深度学习·机器学习
quaer7 小时前
print(2 ** 3)
开发语言·python
翔云1234568 小时前
Python 中 SQLAlchemy 和 MySQLdb 的关系
数据库·python·mysql