【上市公司文本分析】根据句号和分号进行文本分割,提取含有特定关键词的语句并导出为EXCEL

本文介绍了一种基于Python的中文文本分析方法,用于从年报文件中提取含有关键词的语句。方法使用jieba分词库进行中文分词,通过自定义词典提高分词准确性。程序首先读取并预处理文本(统一标点符号、去除换行符),然后按句分割文本并进行分词处理,筛选出包含关键词的语句,最后将结果(股票代码、年份、关键词、语句长度及内容)保存至Excel。该方法适用于批量处理上市公司文本数据,为后续分析提供结构化数据支持。

python 复制代码
import os
import pandas as pd
import jieba
import jieba.analyse
 
item=0 #保存到excel上的行号
fileList=os.listdir('finaltxt')#已提取完毕的txt年报文件目录
fileList.sort()#对年报按文件名进行排序
df=pd.DataFrame(columns=['code','year','sign','keyword','length','sentences'],index=range(1,50000))#预先设置列名,包括股票代码、年报年份、标记、提取出该句子所依据的关键词、文本字符长度、句子,创建50000行的空表,行数可自行估计设定
Dict=['','','']#自行录入关键词词典,注意是英文符号

for i in Dict:
    jieba.add_word(i)# 向jieba内加入这些词语,防止被拆分   
for index,i in enumerate(fileList):  
    name=i[:-4].split('_')#根据txt文件名称进行切分,例如文件名为873833_2023-12-31.txt,name[0]为873833,name[1]为2023-12-31
    with open('finaltxt\\'+i,'r',encoding='utf-8') as f: 
        text=f.read()
        text=text.replace('\n','')#删除换行符
        text=text.replace(';','。')#将分号统一换成句号
        textList=text.split('。') #按句号分割
        #遍历每一句话,进行分词和语句提取
        for i in textList:
        	words=jieba.lcut(i)
            for word in words:
                if word in Dict:#如果识别到有分词结果在关键词词典里,就录入信息
                	#向df里录入信息
                    df['code'][item]=name[0]
                    df['year'][item]=name[1][:4]
                    df['keyword'][item]=word
                    df['length'][item]=len(i)
                    df['sentences'][item]=i
                    item+=1
                    break
                else:
                    continue
        f.close()       
    print(str(index)+'完成')
df.to_excel('result.xlsx')
相关推荐
长和信泰光伏储能20 小时前
京津冀光伏发电:绿色能源的未来之路
python·能源
浦信仿真大讲堂20 小时前
从重复操作到自动化闭环:如何让 CST 与 Python 真正协同起来
python·自动化·cst·仿真软件·达索软件
hPw0eKIqD20 小时前
使用二次封装的Excel COM 组件操作Excel\WPS ET中的区域、行和列
excel·wps
Gu Gu Study21 小时前
ScoutLoop开放域深度研究引擎(agent的初步设计想法)
人工智能·python
卷无止境1 天前
写代码这件事,到底该讲究点什么?
后端·python
卷无止境1 天前
循环复杂度到底在算什么,Python 代码怎么才能写得让人一看就懂
后端·python
lpfasd1231 天前
MediaCrawler 项目深度分析
chrome·python·chrome devtools
Dxy12393102161 天前
Python项目打包成EXE完整教程(PyInstaller实战避坑)
开发语言·python
bamb001 天前
一个项目带你入门AI应用开发01
python
0566461 天前
Python康复训练——常用标准库
开发语言·python·学习