仅用四行代码就可以挖掘你的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 即可获取下载链接。


现在来对这个包进行一个简单介绍。

首先这个包依赖以下五个包,分别为:

rJavaRwordsegdplyrwordcloud2ggplot2

因此你在使用这个包的时候一定要确保已经装了这五个包。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

2 0