使用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

  • 16
    点赞
  • 108
    收藏
    觉得还不错? 一键收藏
  • 10
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值