TGI分析,资料分析中指数概念
这是Python数据分析在实战中的首例。详细解释了TGI指数,并用Python代码实现了基本的TGI偏好分析。
经常会有一些专业的数据分析报告会提到TGI指数,比如“基于某某TGI指数,我们发现部分用户偏好XX”。对于那些不熟悉TGI定义的人来说,如果你看到类似的东西,那一定是云山雾罩。这次我们来讲讲
什么是TGI指数
,以及如何结合案例数据实现简单的TGI偏好分析。
。网上搜索TGI指数,百科解释为——TGI指数,全称是目标群体指数,可以反映特定研究范围内目标群体的强弱。
很好,这个解释正式揭示了特长,特长中弥漫着晦涩,让人看得懂,看得懂。粗略地翻译,TGI指数是反应偏好的指标。这仍然不够清楚。我们用公式来理解一下。
TGI指数计算公式 = 目标群体中具有某一特征的群体所占比例 / 总体中具有相同特征的群体所占比例 * 标准数100
你更晕吗?只是头晕!不,我们在说什么?
01 指标拆解
TGI计算公式中有三个关键点需要进一步分解:
某一特征,总体,目标群体。
。举个栗子的例子。假设我们想研究A公司脱发的TGI指数:
某一特征
,这是我们要分析的某种行为或状态,这里是脱发(或患脱发)
总体
,这是我们研究的所有对象,也就是a公司的老板。
目标群体
是我们感兴趣的一组。假设我们关注的群体是数据部门,那么目标群体就是数据部门。于是,公式中的分子“目标基团中具有某种特征的基团的比例”可以理解为
“数据部脱发人数占数据部的比例”
。假设数据部有15个人,有9个人被脱发困扰,那么数据部的脱发比例就是9/15,等于60%。分母“具有相同特征的群体占整体的比例”相当于“全公司患脱发的人数占公司总人数的比例”。假设公司有500人,120人脱发,比例为24%。
因此,数据部的脱发TGI指数可以是60%/24% * 100=250。其他部门脱发TGI指数的计算逻辑是一样的,可以用本部门脱发比例/本公司脱发比例* 100。
TGI指数大于100,意味着一些用户有更多相应的倾向或偏好。值越大,倾向和偏好越强。如果小于100,说明这类用户的关联倾向较弱(与平均值相比);等于100意味着处于平均水平。
在刚才的例子中,我们捏造数据部门的脱发TGI指数是250,远远高于100。看来数据上的脱发风险极高,数据才是发际线的真正驱动力。
下面我们就通过一个案例巩固一下概念上的理解,顺便和熊猫比一比。
02 TGI实例分析
项目背景
BOSS抛出了一个订单明细,“耐穿高跟鞋,我们最近准备推出一款客群较高的产品,计划先在部分城市试用。看看这个数据,哪些城市的人客户名单偏好度高,请帮我筛选出五个”。
持久的高跟鞋快速打开表单,看看数据是什么样子的:
订单数据包括品牌名称、买家姓名、付款时间、订单状态和地区等字段。总共有28832条数据,没有空值。
粗略的看了一下源数据后,长久的高跟鞋很快明确了数据需求:“领导,高客群的定义是什么?”
“就我们的产品线和历史数据来看,单笔采购大于50元的视为高阶客户”。
确定了高客单之后,我们的目标很明确:根据高客单偏好对城市进行排序。这里的偏好可以用TGI指数来衡量。让我们再来回顾一下TGI的三个核心观点:
特点,客户订单高,即客户单笔购买超过50元。
目标群体是每个城市。在这里,我们可以计算所有城市客户的高阶偏好。
至于整体,很直白。所有参与计算的客户都是整体。
解决问题的关键是计算不同城市高端旅客的数量和比例。
单个用户打标
第一步,我们先判断每个用户是否属于高客户人群,所以先按昵称分组,看每个用户的平均付费金额。这里用的是平均,因为有的客户买了很多次,每单金额不一样,所以是平均。
然后,定义一个判断函数。单个用户平均支付金额大于50的,标记为“高客户名单”;否则,它是低客户列表,然后用apply函数调用它:
至此,用户基于高低客户名单的初步标记已经完成。
匹配城市
单个用户和客人列表标签的数量已经固定。下一步是补充每个用户的地理字段,这可以通过一个pd.merge函数来固定。由于源数据未进行重复数据消除,我们必须先按昵称对其进行重复数据消除,否则匹配结果中会有许多重复数据:
高客单TGI指数计算
要计算每个城市高端客票的TGI指数,需要得到每个城市高端客票和低端客票的数量。如果用EXCEL透视表来处理,就很简单了。将省市直接拖到行的位置,将客人列表类别拖到列的位置。你可以选择任何领域,只要是统计学。
不用慌,这套操作在Python中也很容易实现。pivot_table透视函数可以在一行中完成:
这个结果包含了层次索引,由于篇幅限制,我们就不说了。只要知道要通过索引得到“高客单”列,就需要先索引“买家昵称”,再索引“高客单”:
这样得到每个省市的高客单数量,再得到低客单数量进行横向整合:
让我们看看每个城市的总人数和高客单人数的比例来完成分子“目标群体中具有某种特征的群体比例”的计算:
在一些非常小的城市,高或低的乘客数等于1甚至没有,这些值尤其是空值会影响结果的计算。我们必须提前检查数据:
果然,高低客名单都有空值(可以理解为0),导致总人数也有空值,TGI指数对空值的意义不大,所以我们剔除空值的行:
然后,统计高客单人群在总人数中的比例,以基准“具有相同特征的群体在总人口中的比例”公式中的分母:
最后一步是计算TGI指数。顺便安排一下顺序:
结果长感情的高跟鞋兴致勃勃的打算第一时间向老板汇报,一句话也没说。在按回车键之前,他们扫了一眼数据,发现了一个严重的问题:
高客单TGI指数排名靠前的城市,总客户数几乎不超过10人
,完全没有说服力。
TGI指数能够显示偏好的强弱,但很容易让人忽略具体的样本量大小,
这个需要特别注意。我该怎么办?为了加强数据整体的可靠性,龙爱高跟鞋决定先筛选总人数,以总人数的平均值为阈值,只保留总人数大于平均值的城市:
经过处理,经久耐穿的高跟鞋觉得这个数据合理多了。
“报告老板,根据各个城市的TGI指数,我发现福州、珠海、北京、厦门和佛山是乘客名单偏好度最高的前5个城市!我们想尝试新的高端产品,我们只能从客户的角度优先考虑!”
注:后台回复“TGI索引”即可获得完整的案例数据和代码。
-END-
转载或廖资料,欢迎添加微信:Bing0_
更多有趣有用的文章
熊猫中第二有用的功能优雅应用
Python数据分析实用基础清洗常用4轴
Python数据分析实用基础熊猫简介
Python数据分析的实践基础灵活的熊猫索引
别慌剧手把手教你爬DIY豆瓣电影
深5000招聘数据听说产品动不了刀?