前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【黑科技】数据分析师的秘密-QQ聊天记录分析(一)

【黑科技】数据分析师的秘密-QQ聊天记录分析(一)

作者头像
小莹莹
发布2018-04-25 10:47:15
1.6K0
发布2018-04-25 10:47:15
举报

摘要:一群数据分析师在一起谈论着什么?他们最关心什么问题,如何从QQ群这个角度,去做客户的定位分析?

从聊天记录中挖掘出商业的机会,找准最佳推广时机, 深入了解客户需求,做精准的服务.看看用流行的分析软件R怎么做到?

QQ用户已经突破8亿了,估计每五个QQ拥有者就有一个QQ群,现在粉丝经济的火爆,往往通过QQ群能够凝聚一批忠实的客户,qq群不仅是信息交流的,学习,聊天沟通的渠道,同时也是企业与客户拉近距离,沟通的渠道,企业信息展示平台,利用好qq群对于企业推广和运营非常重要。

但是把QQ群当做运营模式来维护的比例少得可怜,如此强大的资源,却没有得到好好利用,原因可能是qq后台数据腾讯没有开放,不像微信公众号等,提取数据困难,没有数据就像巧妇难为无米之炊,分析无从谈起。今天这里分享一个通过聊天记录来分析QQ群的方法。

数据来源

PPV课QQ群,PPV课是国内最活跃的几个大数据社区之一。这里分析了其中8个跟数据分析师学习讨论群的信息.

样本数

聊天记录文件不大,但是数据却非常多,因为是全文本数据,总共有接近10万行数据.

分析结果

群成员活跃情况—-分析群的价值

1.群活跃时间分布—-找准最佳推广时机

2.群成员地区分布—-了解客户的地域特点

3.群成员结构分布—细分客户,挽救流失,重点发展

4.群热门话题—– 深入了解客户需求,做精准的服务

先看看我们初步得到的结果,按照分析目的的顺序:

1.群活跃时间分布:

早上10点,下午5点,是群成员讨论高潮期

可以发现,在一天中10点和下午3–5点,大家异常活跃,基本上是上班后刚坐下没多会,和下班前的一个小时.

而且,下午活跃的情况比较持续.从这里我们也可以一窥数据分析的工作还是相当的舒适,基本上早上忙会,下午一般没有太多事,所以你对这份工作感觉怎么样?

周四周五是群活跃的高峰日,周一却表现平平

再来看看,一周中,星期一到星期天的区别,如下图:一目了然和上图保持了一致,一天中两个高峰期分别是早上10点和下午3–5点,然而一周中星期一却表现平平,是不是节后综合征,上班都没有精神,还是确实周一都比较忙,没有那么多时间交流,而星期天基本上就大家各玩各的去了。

周四的10点 和周五的5点,是两个最热闹的顶峰时刻

最后一幅图是横向的比较,可以看到一周中顶峰在周四的上午10点和周五的下午3点,这个时间段讨论异常激烈,针对这个规律,我们可以在此时间段发布一些消息,如果你是群主的话。

2.群成员地区分布

北上广深是数据分析师的聚集地

qq群成员来自全国各地,那么数据分析师主要在哪里了?由此图我们可以看到,北上广深是比较多的,尤其是深圳,大批的数据分析伙伴都集结在这里,这也是深圳高科技产业的一个特点,在全国来看,依然是北上广深在数据领域比较火热。

3.群成员结构分析

男性90后是数据分析师的主力军

QQ群一般分为这三类人:

相当多孤言寡语的老成员

–发言较少,入群时间长,可以猜测似乎是随着时间慢慢的变得不怎么活跃,偶尔出来说两句话,估计不乏技术大牛.

少数热爱交流的人气王

–入群时间也不算太早和太晚,发言较多.是带动群的关键人物,喜欢与人沟通,群核心成员

大多数的一般活跃成员

–入群也不久,发言不多,这类成员是绝大数群成员的情况,三不时会问问题.

我们使用最近发言距今的时间间隔,与发言的频数两个维度建立了一个二维的RFM模型,通过这两个特征将群成员聚类,首先通过层次聚类的方法,

得到成员树状图,从层次聚类可以看见客户的树状分类情况,有一小簇在最左边,右边基本上分为两大类,当然再往下分类时,右边可以分成更小类,但是这时左边的一小簇就没办法分类了,分出的类只有几个样本,就变得没什么意义,所以我们选择3类,群成员大致可以分为3类。然后进行了K-means 聚类。

如图:可以看到分类效果比较好,基本上客户分为了:

黑色–孤言寡语的老成员,基本上就是入群时间长,早期入群但随着时间推移基本不冒泡。

红色–一人气王,核心成员.这类用户入群时间相对较短,但发言频繁.

绿色—一般成员,入群也不长,发言不多,可以猜测这类成员是一般活跃成员

绝大部分成员在群里一年只冒泡1到4天

如图,这是采集了一年中某一个群的数据,fenbie 统计了成员在群里的冒泡天数,惊奇的发现,只冒泡一天的人占比高达42%,而冒泡一到四天的人数占比高达74%.

那么这些是怎么做出的了,这里介绍一下几个主要步骤,并附带R代码,感兴趣的朋友可以试试.

实现过程

1.获取数据

数据来源于QQ群聊天记录,如果你是群主,你可以很方便的将聊天记录导出为TXT格式的文本,导出方式百度一下就知道.导出如下,(数据经过脱敏处理,非原始数据)

可以看见,基本上就是对话的模式,由于QQ群的特性,聊天内容涉及非常广,也有很多生活方面的话语,对于分析增加难度.考虑我们要分析的目的

1、群成员活跃情况,

2、群活跃时间分布,

3、群成员地区分布,

4、群热门话题

5、群成员的结构分布RFM模型.

我们初步的可以确定我们需要的信息有,时间,成员,地区,谈话文本.也就是谁,在什么时候,说了什么.因为是谈话形式,所以有一个次序的概念,当然,次序可以在时间属性里表现出来.

2.清理数据

我们观察可以看见数据是非结构化的,这对于我们来说,处理起来就增加了不少成本,我们试着看看数据的特征,基本上就是一行 时间加成员 然后换行就是说话的内容,以此循环,这样我们便有了初步的想法,利用这个规律,将时间成员和文本分开成两个属性.

将数据导入到R中.

得到如下情况,

可以观察到,基本上是日期,时间,成员,谈话内容.发现这个规律我们可以很容易的写一个循环就获取出来,但是在弄的过程中,会有一些异常情况,这个也是在清理过程中发现的,

因为行数太多,人眼无法全部扫描一遍.最后我发现的问题是,把TXT导入到R中,会自动的按空格分行.但有的时候谈话内容里很复杂这样会让我们循环定位发生差错,于是我们现在EXCEl里删除空白行.然后再导入.

写上正则式定位到日期,然后接下来的行依次是时间 成员信息,以及谈话文本.详细见代码.

接下来我们便数据的正确性一致性完整性进行探索,当然代码没有写出来,这是在分析过程中做的额外 的事,确保数据的完整性之后,进行简单的统计分析.

3.探索性分析

群成员活跃情况,

群活跃时间分布,

群成员地区分布,

群热门话题

群成员的结构分布RFM模型.

获整理出信息总表: 群成员活跃情况,比较简单,就是从不同角度来看,可以是冒泡的人数占总人比例,可以是每天冒泡人数的分布情况,可以是每天发言数的分布情况,看到周一到周五较活跃,尤其是周四和周五,而一天中早上10点,下午3到5点这两个时间最活跃的时候,这是总体的分析。我也可分析最活跃成员排名,给与奖励等等,当然 QQ群已经有这个功能就是看等级.所以这里不列出.接下来便是获得成员的信息,其实最主要是QQ号.但由于此群成员名字命名有一定要求,所以也可以得到部分地区信息.得到的信息表,只是一个群的,我们需要把几个群人员合并起来,同时要去重,因为有很多情况是,一个人加入多个群,甚至有人改名字,所以我们需要同个QQ号来去重.因为有的人是用邮箱代表QQ号,有的人命名不规范,这就需要我们进行修正,首先冒泡的人占总数的比例,且这其中能够分辨出地区信息的占比又是多少,根据这个比例去调整各地区人数,然后就是,这个我是在EXCEL 里完成的,这里有部分数据和图表, 这里通过R将QQ后都加了后缀,不是QQ邮箱的保留了原来的格式,基本上冒个泡的成员信息都整理好了,便于我们发信息到邮箱了,这样,前三个问题基本上得到解决,当然有很多不好的地方,可以去做修改.也可以根据自己的需求去分析,因为信息由原来的混乱整理成结构化的数据。

ppv课原创文章,未经允许严禁转载

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2016-06-21,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 PPV课数据科学社区 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
大数据
全栈大数据产品,面向海量数据场景,帮助您 “智理无数,心中有数”!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档