大数据统计之卡方检验

        卡方检验是一种用途很广的计数资料的假设检验方法。它属于非参数检验的范畴,主要是比较两个及两个以上样本率( 构成比)以及两个分类变量的关联性分析。其根本思想就是在于比较理论频数和实际频数的吻合程度或拟合优度问题。

目录

文章一:卡方检验

1、数据类型--连续

2、数据类型--离散型

3、举例

3.1、投硬币

3.2、电商中消费者的性别和购买生鲜(独立性检验)

3.3、两组大白鼠在不同致癌剂(甲乙两组)作用下的发癌率

4、总结

文章二:卡方检验原理与应用

1、无关性假设

2、x2值的计算

3、卡方分布的临界值

4、应用场景


文章一:卡方检验

卡方检验分为拟合度的卡方检验卡方独立性检验

在大数据运营场景中,通常用在某个变量(或特征)值是不是和因变量有显著关系。

通俗来讲:卡方检验就是检验两个变量之间有没有关系

举两个例子:

  1. 卡方检验可以检验男性或者女性对线上买生鲜食品有没有区别;
  2. 不同城市级别的消费者对买SUV车有没有什么区别;不同城市级别的消费者对买SUV车有没有什么区别

卡方检验的用途:

  1. 检验某个连续变量的分布是否与某种理论分布相一致。例如是否符合正态分布,均匀分布,Poisson分布
  2. 检验某个分类变量的各类的概率是否等于指定概率
  3. 检验某两个分类变量是否 相互独立
  4. 检测两种方法的检测结果是否一致
  5. 检测控制某种或某几种的变量后,另外两个分类变量是否相互独立。


1、数据类型--连续

正太分布的检验---基本假设H0是:观察频数与期望频数没有差别。

norm_quantiles = [0,.05,0.1,1-0.1,1-0.05,1]
X1 = stats.norm(0.1, 1) # 标准差一样
X1_sample = X1.rvs(n) # 生成第 1 组数据
crit = stats.norm.ppf(norm_quantiles,0.1,1)#对应的x轴的值
frequent = np.histogram(X1_sample,bins=crit)#区间统计频率
plt.hist(X1_sample,bins=crit)
nprob = np.diff(norm_quantiles) #区间占比率
#生成数据的频率与实际的理论频率进行卡方检验
stats.chisquare(frequent[0],nprob*X1_sample.size)
Power_divergenceResult(statistic=3.3112499999999847, pvalue=0.5071517715019188)

2、数据类型--离散型

离散型卡方检验使用的条件(检验某两个分类变量是否相互独立)

四格表卡方检验用于进行两个率或两个构成比的比较。
要求样本含量应大于40且每个格子中的理论频数不应小于5。
当样本含量大于40但理论频数有小于5的情况时卡方值需要校正,当样本含量小于40时只能用确切概率法计算概率。
(1)所有的理论数T≥5并且总样本量n≥40,用Pearson卡方进行检验。
(2)如果理论数T<5但T≥1,并且总样本量n≥40,用连续性校正的卡方进行检验。
(3)如果有理论数T<1或n<40,则用Fisher’s检验。

想对两个或两个以上因子彼此之间是否相互独立做检验时,就要用到卡方检验

独立性检验中,H0:AB无关(没有差别),H1:AB有关系

testarray = np.array([[10,10,20],[20,20,20]])
ss.chi2_contingency(testarray) ## chi2_contingency(矩阵)
(2.7777777777777777, 0.24935220877729622, 2, array([[12., 12., 16.],
[18., 18., 24.]]))
p=0.2>0.05不能拒绝原假设,两者无关

3、举例

3.1、投硬币

投硬币 不知道这个硬币是不是均衡的,我想用正面,反面的频次来判断,我投了50次,其中28个正面,22个反面。我怎么用卡方检验来证明这个硬币是均衡的还是不均衡的呢?

通过卡方检验来拿观察到的现象(投正面或反面的次数或者频数),来判断这个结果(硬币是不是均衡的)。

引入公式:

这个公式可以帮我们求出卡方检验的值,我们用

  1. 这个公式求得的值
  2. 自由度
  3. 置信度

其中,自由度我们可以求出来,置信度的话,我们按照我们自己意愿挑选,一般我们会挑90%或者95%。

我们拿到这3个信息,去查表,因为0.72小于查表得到的3.841,所以我们得出这个硬币是均衡的结论。

3.2、电商中消费者的性别和购买生鲜(独立性检验)

我们要观察性别和在线上买不买生鲜食品有没有关系,现实生活中,女性通常去菜市场买菜的比较多,那么在线上是不是也这样。

我们得出观察到数据,并且形成表格后,我们需要计算理论的数据,在上面的例子我们发现,我们发现有66%的人不在线上买生鲜(599除以907),34%的人会在线上买。 那如果,男的有733个人,女的有174个人,根据这些比例,我们可以得出的理论值是什么呢?

根据理论和实际值,我们可以算出卡方值,自由度,并且结合我们定义的置信度,查表得到性别和线上买生鲜是显著相关的。

3.3、两组大白鼠在不同致癌剂(甲乙两组)作用下的发癌率

如下表,问两组发癌率有无差别?


其中(52 19 39 3)这四个数据是整个表中的基本资料,其余数据均由此推算出来;这四格资料表就专称四格表(fourfold table),或称2行2列表(2×2 contingency table)。

从该资料算出的两组发癌率分别为73.24%和92.86%,两者的差别可能是抽样误差所致,亦可能是两组发癌率(总体率)确有所不同。

这里可通过卡方检验来区别其差异有无统计学意义,检验的基本公式为:


式中A为实际数,以上四格表的四个数据就是实际数。
T为理论数,是根据检验假设推断出来的;
即假设这两组的发癌率本无不同,差别仅是由抽样误差所致。

这里可将两组合计发癌率作为理论上的发癌率,即91/113=80.3%,以此为依据便可推算出四格表中相应的四格的理论数。以上表资料为例检验如下。

检验步骤:

(1)建立检验假设

H0:π1=π2;H1:π1≠π2;α=0.05
(2)计算理论数(TRC)

计算公式为:


式中TRC是表示第R行C列格子的理论数,nR为理论数同行的合计数,nC为与理论数同列的合计数,n为总例数。

第1行1列: 71×91/113=57.18

第1行2列: 71×22/113=13.82

第2行1列: 42×91/113=33.82

第2行2列: 42×22/113=8.18

以推算结果,可与原四项实际数并列成下表:


因为上表每行和每列合计数都是固定的,所以只要用TRC式求得其中一项理论数(例如T1.1=57.18),则其余三项理论数都可用同行或同列合计数相减,直接求出。

(3)计算卡方值公式


(4)查卡方值表求P值
在查表之前应知本题自由度。按卡方检验的自由度v=(行数-1)(列数-1),则该题的自由度v=(2-1)(2-1)=1,查卡方界值表,找到x 0.05 2 ( 1 ) = 3.84 x^2_{0.05}(1)=3.84x0.052​(1)=3.84,而本题卡方=6.48,即卡方>x 0.05 2 ( 1 ) = 3.84 x^2_{0.05}(1)=3.84x0.052​(1)=3.84,P<0.05,差异有显著统计学意义,按α = 0.05 \alpha=0.05α=0.05水准,拒绝H0,可以认为两组发癌率有差别。

4、总结

通过实例计算,读者对卡方的基本公式有如下理解:

  1. 若各理论数与相应实际数相差越小,卡方值越小;如两者相同,则卡方值必为零,而卡方永远为正值。
  2. 又因为每一对理论数和实际数都加入卡方值中,分组越多,即格子数越多,卡方值也会越大,因而每考虑卡方值大小的意义时同时要考虑到格子数。因此自由度大时,卡方的界值也相应增加


文章二:卡方检验原理与应用

        卡方检验,或称x2检验,被誉为二十世纪科学技术所有分支中的20大发明之一,它的发明者卡尔·皮尔逊是一位历史上罕见的百科全书式的学者,研究领域涵盖了生物、历史、宗教、哲学、法律。之前做文本分类项目用过卡方值做特征选择(降维),后来听内部培训,另一个部门说他们有用卡方检验做异常用户的检测,于是就想把卡方检验再温习一次,同时把卡方检验和特征选择串起来理解。

1、无关性假设

第二步,根据无关性假设生成新的理论值四格表:

组别属于娱乐不属于娱乐合计
不包含吴亦凡43 * 0.609 = 26.243 * 0.391 = 16.843
包含吴亦凡44 * 0.609 = 26.844 * 0.391 = 17.244

显然,如果两个变量是独立无关的,那么四格表中的理论值与实际值的差异会非常小。

2、x2值的计算

x2的计算公式为:

        其中A为实际值,也就是第一个四格表里的4个数据,T为理论值,也就是理论值四格表里的4个数据。

x2用于衡量实际值与理论值的差异程度(也就是卡方检验的核心思想),包含了以下两个信息:

  • 实际值与理论值偏差的绝对大小(由于平方的存在,差异是被放大的)
  • 差异程度与理论值的相对大小

对上述场景可计算x2值为10.01。

3、卡方分布的临界值

        既然已经得到了x2值,我们又怎么知道x2值是否合理?也就是说,怎么知道无关性假设是否可靠?答案是,通过查询卡方分布的临界值表。

这里需要用到一个自由度的概念,自由度等于V = (行数 - 1) * (列数 - 1),对四格表,自由度V = 1

V = 1,卡方分布的临界概率是:

显然10.01 > 7.88,也就是标题是否包含吴亦凡新闻是否属于娱乐无关的可能性小于0.5%,反过来,就是两者相关的概率大于99.5%。

4、应用场景

        卡方检验的一个典型应用场景是衡量特定条件下的分布是否与理论分布一致,比如:特定用户某项指标的分布与大盘的分布是否差异很大,这时通过临界概率可以合理又科学的筛选异常用户。

        另外,x2值描述了自变量与因变量之间的相关程度:x2值越大,相关程度也越大,所以很自然的可以利用x2值来做降维,保留相关程度大的变量。再回到刚才新闻分类的场景,如果我们希望获取和娱乐类别相关性最强的100个词,以后就按照标题是否包含这100个词来确定新闻是否归属于娱乐类,怎么做?很简单,对娱乐类新闻标题所包含的每个词按上述步骤计算x2值,然后按x2值排序,取x2值最大的100个词。


参考: 

  • 1
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值