受http://yixuan.cos.name/cn/2011/03/text-mining-of-song-poems/这篇文章的启发,觉得PYTHON来做文字处理分析应该不错,可以来做个词频分析,分析聊天记录可以看出每个人的说话习惯
用的是暴力方法 不用语义分析 直接列出所有出现的字词
做下来觉得难点就在中文编码这部分 python下中文涉及的编码转化确实要琢磨一番
首先数据文件要存为utf-8格式
在python显示中文的关键代码:
import sys
reload(sys)
sys.setdefaultencoding('utf8')
txt.encode('gb18030')
txt为中文字符串
搜索中文,用正则表达式匹配:
r = re.compile('[\x80-\xff]+')
m = r.findall(txt)
字典排序,按照value排序,代码很精简:
dict=sorted(dict.items(), key=lambda d:d[1])
代码:
#coding=utf-8
#Author: http://blog.youkuaiyun.com/boksic
import sys,re
reload(sys)
sys.setdefaultencoding('utf8')
txt = open('blog.youkuaiyun.com.boksic.txt','r').read()
wfile=open('result.txt','w')
r = re.compile('[\x80-\xff]+')
m = r.

本文受到某文章启发,使用Python进行中文词频分析,主要针对聊天记录进行处理。通过正则表达式匹配中文字符,然后对字典按值排序,以揭示说话习惯。虽然没有涉及复杂的语义分析,但能快速统计大量文本。在50万字的文件中,统计过程不到一秒完成。分析结果显示了一些高频和低频的单字以及多字组合。
最低0.47元/天 解锁文章
3万+

被折叠的 条评论
为什么被折叠?



