仅用四行代码就可以挖掘你的QQ聊天记录
来源:互联网 发布:工薪 理财 知乎 编辑:程序博客网 时间:2024/05/17 22:58
大家好,我上次写的一篇博文是——QQ聊天记录分析,地址为:http://blog.csdn.net/wzgl__wh/article/details/69055369
今天来分享一个更简单的方法。那就是使用R包--QQmining。
QQmining,这是我第一次尝试写的R包,由于还存在着一些警告问题,所以还无法从github上面进行安装,但是可以本地进行安装。你可以访问我的github,。如果你需要这个包的话,可以从我的百度云进行下载:链接:http://pan.baidu.com/s/1kVyW8PT 密码:yrcq,也可以在关注我的微信公众号《跟着菜鸟一起学R语言》后台回复 QQmining 即可获取下载链接。
现在来对这个包进行一个简单介绍。
首先这个包依赖以下五个包,分别为:
rJava,Rwordseg,dplyr,wordcloud2,ggplot2
因此你在使用这个包的时候一定要确保已经装了这五个包。QQmining包下载之后直接复制到library文件夹里面即可直接加载使用。
QQmining这个包有四个函数,作用分别如下:
函数
作用
dataprocess
对数据进行一个处理。有两个参数,一个是路径,一个是文件名;返回一个数据框对象
topic
分析聊天讨论话题。将dataprocess函数返回的参数传入;返回一个词云
timepoint
分析一般聊天的时间点。将dataprocess函数返回的参数传入;返回一张图片
speaker
分析谁是在群里比较活跃。将dataprocess函数返回的参数传入;返回一张图片
如果你也可以查看帮助文档,比如查看topic()函数,既可以输入指令
?topic
就可以查看,不过由于时间上的关系,帮助文件写的比较简单粗糙,还存在许多问题,用的时候希望大家太在意细节。
那么我们现在就用四行代码来分析一个QQ群的聊天记录吧!
1、处理数据
qqdata<-dataprocess ("C:/Users/henry wang/Desktop/","数据分析师之家.txt")
2、分析讨论话题
topic(qqdata)
运行结果如下:
因为我们没有删除停用词,所以说效果不是很好。
3、分析聊天时间
timepoint(qqdata)
结果如下:
4、分析最活跃的人
speaker(qqdata)
结果如下:
好了,我们用了4行代码就轻轻松松的分析了一份QQ聊天记录,是不是很简单。但是这个包对以下情况可能会出现一些错误
1.如果聊天记录存在语言消息,可能会出错。
原因:如果存在语音聊天记录,在导出的.TXT文件里面是空白的一行。在删除NA之后无法合并在一个数据框里面。如下图:
2.如果用户名存在特殊字符,系统无法识别也可能出错。
原因:speaker()函数分析活跃成员时,用户名作为一个坐标轴的属性,ggplot函数无法识别一些特殊字符则报错。如下图:
总结:一方面,这个包是我做的第一个包,也许还存在着一些bug,如果遇到了欢迎告诉我;另外一方面,这个包功能还太简单,每一个函数也只有一到两个参数,对于输出结果也太单一。在后期我也会继续对这个包进行更新和完善,让每一个函数包含更多的参数,不断丰富每一个函数的功能。谢谢大家的支持!
注:这个包在R 3.3.2版本开发写的,尽量在3.3.2版本或更新的版本上面使用。
注:转载请注明原文链接为:http://blog.csdn.net/wzgl__wh/article/details/70948887
- 仅用四行代码就可以挖掘你的QQ聊天记录
- 简单的文本挖掘-用于QQ聊天记录(R)
- QQ是如何监控你的聊天记录的
- 知道QQ号,不知道密码,可以盗取别人的QQ聊天记录吗
- 怎么让别人点击文字“加我为qq好友”就可以加你qq的网页链接
- QQ群的一次聊天记录
- QQ聊天记录的存储格式
- QQ聊天记录的保存位置
- 请问不要密码可以查别人的QQ和微信的聊天记录吗
- QQ聊天记录
- QQ聊天记录
- QQ聊天记录
- QQ聊天记录
- viewpager 自动无限循环 这段代码移到你的程序中就可以用了
- 怎样才能查看爱人的微信聊天记录QQ聊天记录
- 真的就有人可以用两三行代码实现你写了几十行代码的功能.....
- qq 修改聊天记录位置的办法
- QQ医生查不出的聊天记录软件
- Struts,Spring,Hibernate的作用
- [MySQL]基础
- Qt5实现系统关机和重启的功能
- 数组5:连续子数组的最大和
- AbstractQueuedSynchronizer的介绍和原理分析
- 仅用四行代码就可以挖掘你的QQ聊天记录
- 第一章习题分析
- 数组6:把数组排成最小的数
- jQuery的each与map的区别
- AOJ.862 平面上最近点对
- springmvc(八)---拦截器的使用
- 数组7:构建乘积数组
- PHP文件目录操作
- Linux(Centos6.8)环境下安装jdk及Tomcat