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