使用python对中文文档进行词频统计

1、使用jieba先对中文文档进行分词处理
需要处理的clean_data.csv文件内容(三列)

http://you.ctrip.com/travels/1322/1360550.html   地中海邮轮+罗马深度自由行      宅猫行天下     
http://you.ctrip.com/travels/1400/1600356.html  柏林&安纳西     老鼠m

import sys
reload(sys)
sys.setdefaultencoding("utf-8")
 
import jieba
import jieba.analyse
 
wf = open('clean_title.txt','w+')
for line in open('/root/clean_data/clean_data.csv'):
 
    item = line.strip('\n\r').split('\t') //制表格切分
    # print item[1]
    tags = jieba.analyse.extract_tags(item[1]) //jieba分词
    tagsw = ",".join(tags) //逗号连接切分的词
    wf.write(tagsw)
 
wf.close()

输出的clean_title.txt内容
邮轮,地中海,深度,罗马,自由纳西,柏林签证,步行,三天,批准申根,手把手,签证,申请,如何赞爆,法兰,穿越,葡萄酒,风景,河谷,世界欧洲颜色,一种,国家,一个水族箱,帕劳,七日,上帝奥林匹亚,跑步圣托,
里尼,文明古国,探访,爱琴海,魅力,希腊
2、统计词频

#!/usr/bin/python
# -*- coding:utf-8 -*-
 
word_lst = []
word_dict= {}
with open('/root/clean_data/clean_title.txt') as wf,open("word.txt",'w') as wf2: //打开文件
 
    for word in wf:
        word_lst.append(word.split(',')) //使用逗号进行切分
        for item in word_lst:
             for item2 in item:
                if item2 not in word_dict: //统计数量
                    word_dict[item2] = 1
                else:
                    word_dict[item2] += 1
 
    for key in word_dict:
        print key,word_dict[key]
        wf2.write(key+' '+str(word_dict[key])+'\n') //写入文档

结果:
最后 4
欧洲幽蓝 1
集美 1
葡萄牙法多 1
工地 1
知道湖光山色 1
神圣 7
欧洲少女瑞士加游 1

根据词汇数量排序查看:

cat word.txt |sort -nr -k 2|more

神圣 7
最后 4
欧洲幽蓝 1
集美 1
葡萄牙法多 1
工地 1
知道湖光山色 1
欧洲少女瑞士加游 1


原文链接:https://blog.csdn.net/levy_cui/article/details/53129506

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值