查看原文
其他

基于统计词频分析图书馆采购书籍方向(朴素版)

2017-05-31 王大伟 Python爱好者社区

(点击上方Python爱好者社区,可快速关注)

作者:王大伟

博客专栏:https://www.hellobi.com/u/wangdawei/articles

Python爱好者社区  唯一小编  

前言

这个故事的开始是一个师姐(现在是本校图书馆老师)想要看看图书馆的被借过的书和没被借过的书的特征

可能是想为之后图书馆采购书籍做个参考。

于是当师姐找到我时

我欣然接受这个task啦~

首先,她给我两个excel文档


打开是这样的:


不重要和敏感信息已经打码脱敏~

pandas大法好

接下来,就要使用Python中学过的pandas啦~

在使用pandas过程中,感谢@秦路老师和@诛胖土豆的深夜指导!

import pandas as pd
import numpy as np
df=pd.read_excel("被借过的书.xlsx")#如果不是放在jupyter notebook目录里,要加上相应路径df#看看效果


我选择jupyter notebook作为IDE  而不是pycharm,就是因为喜欢它的可视化展现和保存执行结果


处理思路:将正题名一列的名字全部合成一条字符串,然后分词。

a=''.join(df['正题名'])#使用join()方法将df正题名一列名字顺序连接起来放在字符串a中
a#看一下a的内容


分词处理

import jieba#导入jieba分词模块,安装和简单使用方法已经在我之前的文章里说过啦~

统计词频

思路:建立一个空字典,用jieba的精准模式分词通过key存分出来的词,value存词频,最后打印词和对应词频

wordsall = {} #define return dic
seg_list = jieba.cut(a, cut_all=False)
rowlist = ' '.join(seg_list)
words = rowlist.split(' ')
for word in words:
    if word !=' ':
        if word in wordsall:
            wordsall[word]+=1
        else:
            wordsall[word] = 1
wordsall = sorted(wordsall.items(), key=lambda d:d[1], reverse = True)
for (word,cut) in wordsall: 
    print ('%s:' % word,cut)   

被借过的书分析结果如下:


没被借过的书分析结果如下:


通过观察可以发现:有与、的等无意义的词也被统计了,管理、经济、中国、研究等词在被借过的书和没被借过的书里都高频出现,说明图书馆有很多类似字样的书,而投资、物流、会计等在被借过的书中高频出现,而报告、产业、国际、现代等词在没被借过的书中高频出现,这为图书馆新采购书提供了一点点点点点点参考。

说到做到,新福利来啦:

关注公众号,在公众号菜单点击"免费听课",即可参与活动免费听19.9元收费课程,当然,壕大大可以直接购买听课啦。

壕大大入口:https://edu.hellobi.com/course/186,点击文末阅读原文可购买

本次主打课程:

Hellobi Live | 6月6日 自然语言处理之-基于深度学习技术的聊天机器人实现


课程名称:

自然语言处理之-基于深度学习技术的聊天机器人实现

课程背景:

NLP是一个很大的领域,自成一系,本次课程通过一个企业级案例(聊天机器人)带领大家从了解项目场景开始一步步搭建,最后演示聊天机器人实例。通过本课程的学习,让你一举打开NLP的大门。

主讲老师:

Kenny,计算机硕士,曾在某上市公司和世界500强公司分别担任智能算法工程师,高级算法挖掘工程师,具有多年的大数据项目开发实战经验,坚持在代码开发的一线,设计和实现了多个大数据项目。

Kenny博客专栏:https://ask.hellobi.com/blog/KennySayHi

直播时间:

2017年6月6日晚上8点到10点

课程内容:

1、 聊天机器人概括,应用场景,分类,技术发展路线及基于深度学习技术聊天机器人

2、 基于深度学习聊天机器人训练数据收集,清洗

3、 特征工程:文本数据预处理,特征化和数值化后转化为可训练的数据

4、 LSTM组件介绍

5、 Seq2seq算法介绍

6、 Seq2seq模型的优缺点和改进


Python爱好者社区


为大家提供与Python相关的最新技术和资讯


长按指纹 > 识别图中二维码 > 添加关注

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存