团队项目冲刺第三天 数据清洗 一
数据清洗 一
数据已经取出,然后是对数据的一个清洗
其中中文文本的分类
需要分词
还需要进行 停用词的取出
以防对特征值的抽取造成过大影响
分词是为了进行特征抽取的一个词语分割 然后进行提取作用
# encoding=utf-8 #遍历文件,用ProsessofWords处理文件
from imp import reload
import jieba
import os
import numpy as np
import sys
reload(sys)
def EnumPathFiles(path, callback, stop_words_list):
if not os.path.isdir(path):
print('Error:"', path, '" is not a directory or does not exist.')
return
list_dirs = os.walk(path)
for root, dirs, files in list_dirs:
for d in dirs:
print(d)
EnumPathFiles(os.path.join(root, d), callback, stop_words_list)
for f in files:
callback(root, f, stop_words_list)
def ProsessofWords(textpath, stop_words_list):
f = open(textpath, 'r', encoding='utf-8')
text = f.read()
f.close()
result = list()
outstr = ''
seg_list = jieba.cut(text, cut_all=False)
for word in seg_list:
if word not in stop_words_list:
if word != '\t':
outstr += word
outstr += " "
f = open(textpath, 'w+', encoding='utf-8')
f.write(outstr)
f.close()
def callback1(path, filename, stop_words_list):
textpath = path + '\\' + filename
print(textpath)
ProsessofWords(textpath, stop_words_list)
if __name__ == '__main__':
stopwords_file = "../stopword/stopword.txt"
stop_f = open(stopwords_file, "r", encoding='utf-8')
stop_words = list()
for line in stop_f.readlines():
line = line.strip()
if not len(line):
continue
stop_words.append(line)
stop_f.close()
print(len(stop_words))
EnumPathFiles(r'../article', callback1, stop_words)
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 上周热点回顾(3.3-3.9)
· AI 智能体引爆开源社区「GitHub 热点速览」