聚类分析在用户分类中的应用

什么是聚类分析? 
聚类分析属于探索性的数据分析方法。通常,我们利用聚类分析将看似无序的对象进行分组、归类,以达到更好地理解研究对象的目的。聚类结果要求组内对象相似性较组间对象相似性较。在用户研究中,很多问题可以借助聚类分析来解决,比如,网站的信息分类问题、网页的点击行为关联性问题以及用户分类问题等等。其中,用户分类是最常见的情况。

聚类分析的基本过程是怎样的?

  • 选择聚类变量
  • 聚类分析
  • 找出各类用户的重要特征
  • 聚类解释&命名

 

||  选择聚类变量

在设计问卷的时候,我们会根据一定的假设,尽可能选取对产品使用行为有影响的变量,这些变量一般包含与产品密切相关的用户态度、观点、行为。但是,聚类分析过程对用于聚类的变量还有一定的要求:

  • 这些变量在不同研究对象上的值具有明显差异;
  • 这些变量之间不能存在高度相关。

因为,首先,用于聚类的变量数目不是越多越好,没有明显差异的变量对聚类没有起到实质意义,而且可能使结果产生偏差;其次,高度相关的变量相当于给这些变量进行了加权,等于放大了某方面因素对用户分类的作用。

识别合适的聚类变量的方法:

  • 对变量做聚类分析,从聚得的各类中挑选出一个有代表性的变量;
  • 做主成份分析或因子分析,产生新的变量作为聚类变量。

|| 聚类分析

相对于聚类前的准备工作,真正的执行过程显得异常简单。数据准备好后,丢到统计软件(通常是spss)里面跑一下,结果就出来了。

这里面遇到的一个问题是,把用户分成多少类合适?通常,可以结合几个标准综合判断:

  • 看拐点(层次聚类会出来聚合系数图,如右图,一般选择拐点附近的几个类别)
  • 凭经验或产品特性判断(不同产品的用户差异性也不同)
  • 在逻辑上能够清楚地解释

|| 找出各类用户的重要特征

确定一种分类方案之后,接下来,我们需要返回观察各类别用户在各个变量上的表现。根据差异检验的结果,我们以颜色区分出不同类用户在这项指标上的水
平高低。如下图,红色代表“远远高于平均水平”,黄色代表“平均水平”,蓝色代表“远远低于平均水平”。其他变量以此类推。最后,我们会发现不同类别用户
有别于其他类别用户的重要特征。

|| 聚类解释&命名

在理解和解释用户分类时,最好可以结合更多的数据,例如,人口统计学数据、功能偏好数据等等(如下图)……最后,选取每一类别最明显的几个特征为其命名,就大功告成啦!

参考资料:

http://www.redshiftresearch.co.uk/ImageLibrary/Cluster%20Analysis.pdf

《社会统计分析方法——spss软件应用》

时间: 2024-10-15 13:03:47

聚类分析在用户分类中的应用的相关文章

用户运营中的积分系统如何设计?

对于互联网行业,可能很多人脑中没有一个成型的互联网体系,都很零散,做过的工作也不成系统.很多人会问:互联网平台做运营是做什么?其实不管是什么公司,互联网运营是最复杂的工作,因为运营覆盖的范围和内容很多,最全面的体系运营实际有12大体系,内容运营也只是12大体系运营里面的其中之一. 比如说,我们每一个人在做互联网运营的时候,首先在我们脑子里要形成一个知识体系.用户运营是属于12大体系之一,那积分运营和用户运营又是如何关系,怎么通过积分运营来达到用户运营的效果,具体的运营策略是什么,本文接下来就重点

mysql “group by ”与"order by"的研究--分类中最新的内容

这两天让一个数据查询难了.主要是对group by 理解的不够深入.才出现这样的情况这种需求,我想很多人都遇到过.下面是我模拟我的内容表我现在需要取出每个分类中最新的内容 select * from test group by category_id order by `date` 结果如下明显.这不是我想要的数据,原因是msyql已经的执行顺序是 引用 写的顺序:select ... from... where.... group by... having... order by..执行顺序:

分类中数据不平衡问题的解决经验

问题:研究表明,在某些应用下,1∶35的比例就会使某些分类方法无效,甚至1∶10的比例也会使某些分类方法无效. (1)少数类所包含的信息就会很有限,从而难以确定少数类数据的分布,即在其内部难以发现规律,进而造成少数类的识别率低 (2)数据碎片.很多分类算法采用分治法,样本空间的逐渐划分会导致数据碎片问题,这样只能在各个独立的子空间中寻找数据的规律,对于少数类来说每个子空间中包含了很少的数据信息,一些跨空间的数据规律就不能被挖掘出来. (3)不恰当的归纳偏置.许多归纳推理系统在存在不确定时往往倾向

黄聪:WordPress 多站点建站教程(六):使用WP_Query、switch_to_blog函数实现获取子站点分类中的文章

首先在你使用主题的funtions.php里面添加下代码: //根据时间显示最新的分类文章内容,每个站点显示一篇内容 //$blog_id 子站点ID //$catid 分类ID wp_reset_query(); switch_to_blog($blog_id); global $post;?> $my_query2 = new WP_Query('showposts=1&order=desc&orderby=date&cat='.$catid); while ($my_q

“System.Exception”类型的异常在 NHibernate.dll 中发生,但未在用户代码中进行处理

“System.Exception”类型的异常在 NHibernate.dll 中发生,但未在用户代码中进行处理 其他信息: OCIEnvCreate 失败,返回代码为 -1,但错误消息文本不可用. 如有适用于此异常的处理程序,该程序便可安全地继续运行.

第26条:勿在分类中声明属性

属性是封装数据的方式(参见第6条). 属性只是定义实例变量及相关存取方法所用的“语法糖”,所以也应遵循同实例变量一样的规则. 分类机制,应该将其理解为一种手段,目标在于扩展类的功能,而非封装数据. 尽管从技术上说,分类里也可以声明属性,但这种做法应该尽量避免. 原因是:除了“class-continuation分类”(参见第27条)之外,其他分类都无法向类中新增实例变量,因此,它们无法把实现属性所需的实例变量合成出来. 所以开发者需要在分类中为该属性实现存取方法. 1)此时可以把方法声明为@dy

无限极分类中,查找子孙树

<?php // 无限级分类中,查找子树树 $area = array( 0=>array('cat_id'=>1,'cat_name'=>'北京市','parent_id'=>0), 1=>array('cat_id'=>2,'cat_name'=>'馆陶县','parent_id'=>5), 2=>array('cat_id'=>3,'cat_name'=>'海淀区','parent_id'=>1), 3=>array

Powershell删除Exchange用户邮箱中多余的电子邮件地址

今天闲暇无事,看到杜飞老师在51cto博客上的一篇文章,关于写Exchange删除用户邮箱中多余的电子邮件地址的博客地址,博客链接:http://dufei.blog.51cto.com/382644/1590097,继续翻阅网上同类的文章,又找到一篇徐鹏徐大师在csdn上的一篇博客,也是同样的主题,博客链接:http://blog.csdn.net/fogyisland2000/article/details/7805291 ,徐大师说的这个程序我找了下官方链接,已经停止更新了,最新的版本是2

ORA-01436: 用户数据中的CONNECT B 循环

起始地     目的地     距离(公里)A             B             1000A             C             1100A             D             900A             E             400B             D             300D             F             600E             A             400F