中医汉英语料库数字资源平台项目(八)

5.31会议纪实

原因:

项目工期即将结束,一方面为了安抚人员情绪,另一方面对一些其他功能进行细化,为此开会。

会议内容:

1.敲定了二次搜索的具体实现形式

2.确定了中心性的统计方法

3.细化安排了未来几天的工作内容以及必要的进展

中心性统计:

采用了python自带的jieba分词库,对所有的文本语料进行了分词处理统计

import re # 正则表达式库
import collections
from tkinter import font # 词频统计库
import numpy as np # numpy数据处理库
import jieba # 结巴分词
import xlwt
import xlrd
from PIL import Image # 图像处理库
import matplotlib.pyplot as plt # 图像展示库
from wordcloud import WordCloud
import PIL.Image as image

object_list = []

#读取文件
with open('download_nkxch.txt',"r",encoding="utf-8") as f:
    lines = f.readlines()
    for line in lines:
        string_data = str(line)
        # 文本预处理
        pattern = re.compile(u'\t|\n|\。|,|?|;|\(|\)|\·|“|”|;|!|:') # 定义正则表达式匹配模式
        string_data = re.sub(pattern, '', string_data) # 将符合模式的字符去除
        # 文本分词
        seg_list_exact = jieba.lcut(string_data, cut_all = False) # 精确模式分词

        for word in seg_list_exact: # 循环读出每个分词
            if word not in remove_words: # 如果不在去除词库中
                object_list.append(word) # 分词追加到列表

# 词频统计
word_counts = collections.Counter(object_list) # 对分词做词频统计
names = list(word_counts.keys())
values = list(word_counts.values())
length = len(word_counts)
# print(values)
book = xlwt.Workbook(encoding='utf-8',style_compression = 0)
sheet = book.add_sheet('词频统计',cell_overwrite_ok=True)

for i in range(length):
    sheet.write(i,0,names[i])
    sheet.write(i,1,values[i])
savepath = 'excels\\aaa.xls'
book.save(savepath)

为了保证数据的可读取性,我们数据库中存放的数据时方便自然人阅读的,存在很多助词、语气词、其他的数字等等不需要的词汇,在这里利用jieba库中的剔除词功能,进行剔除:

remove_words = [u'的', u',',u'和', u'是', u'一作', u'皆', u'对',u'等',u'能',u'都',u'其二',u'四首',u'三首',
    u'。',u' ',u'、',u'(',u')',u'以',u'\r',u'\u3000',u'《',u'》',u'他',u'者',u'则',u'非',u'却',u'但',u'/',u'二首',u'其一',
    u'中',u'在',u'了',u'曰',u'无',u'之',u'只',u'不',u'与',u'为',u'你',u'其',u'又',u'人',u'于',u'可',u'从',u'如',
    u'到',u'一',u'矣',u'亦',u'既',u'乎',u'g',u'10g',u'5g',
    u'而',u'也',u'我',u'有'] # 自定义去除词库

注:这里仅展示了部分剔除词。

计算:

通过简单地除法运算得到每一个词的占比,将该数值作为中心性的指标:

import xlrd
import xlwt
import csv

workbook1 = xlrd.open_workbook('excels\\bbb.xls')
sheet= workbook1.sheet_by_index(0)

nrows = sheet.nrows  #获取总行数

words=[]
values=[]
thisTotal=[]
total=[]
n1 = sheet.cell_value(0,2)
n2 = sheet.cell_value(0,3)

for i in range(nrows-1):
    na = sheet.cell_value(i+1,0)
    num = sheet.cell_value(i+1,1)
    f1 = num/n1 * 100
    f2 = num/n2 * 100
    words.append(na)
    values.append(num)
    thisTotal.append(f1)
    total.append(f2)

book = xlwt.Workbook(encoding='utf-8',style_compression = 0)
sheet = book.add_sheet('词频统计',cell_overwrite_ok=True)
length = len(values)
for i in range(length):
    sheet.write(i,0,words[i])
    sheet.write(i,1,values[i])
    sheet.write(i,2,thisTotal[i])
    sheet.write(i,3,total[i])
savepath = 'excels\\ccc.xls'
book.save(savepath)
    
        

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值