假设检验在数据分析中的应用_第1页
假设检验在数据分析中的应用_第2页
假设检验在数据分析中的应用_第3页
假设检验在数据分析中的应用_第4页
假设检验在数据分析中的应用_第5页
已阅读5页,还剩5页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、通过一个案例告诉大部分初学者假设检验怎么在数据挖掘中使用。%inatplotlib inlineimport inatplotlib.pyplot as phimport pandas as pdimport numpy as npimport seaborn as snsfrom scipy import statsfrom statsmodels.stats import weightstats as mstats df_exams = p d.read_csv(/Students Perfonnance.csv) df_exains.head()femaleroupBbachelors

2、cegreestandardnone727274femalegroup Csome collegestandardcompleted699088femalegroupBnW$ degreestandardnone909593malegroupAassociated degreefreeVeducednone475744malegroup Cscmecotegestandardnone7678750234gender race/ettwicity parental level of education lunch test preparation course math score readin

3、g score writing scoreclfLexams.rename(coIumns=race/ethnicity:ethnicity an place=True) df_exains.rename(colunins=parental level ofeciucation:parents_educationunplace =True)clf_exams.renanie(colunins=test preparation courseVtest_prep_course4nplace=Tru e)clfLexams.rename(coIumns=(math score:math_score

4、Jnplace=True) df_exains.rename(colunins=reading score:reacling_score4,inpIace=True) df_exams,renanie(colunins=writing score:writing_score4npkice=Tnje) 查看前5行的信息df_exains.head()接下来査看类别型数据是否均匀, df_examsethnicity.value_counts() group C group D group B group E319262190140数值型数据是否服从正态分布。femalegroup Bbachel

5、or degreestandardnone727274femalegroup Csone collegestandardcompleted699088femalegroup Bmasters degreestandardnone909593mategroup Aassociates degreefree/reducednone475744malegroup Csome collegestandardnone76787503gender ethnicity parentseducation lunch testprepjourse mathjcore readingscore writingsc

6、oregroup A 89Name: ethnicity, dtype: int64以宗族信息这一列为例,可以看出C的占比较重,group A只有89 例。这也就说明当选择从每个group抽取80个样本是不合适的,因为 这对A来说每次抽取,样本信息儿乎没有发生什么变化。exams = math_score/reading_score7writing_scorefor exam in exams:y = df_examsexamplt.figurel); plt.titIe*Nonnar)snsdistplot(y, kde=FaIse, fit=stats,norm)plt.figure(2)

7、; plt.titlefJohnson SU) sns.distpiot(y, kde=FaIse, fit二statsjohnsonsu)00000.025fig = p lt.figureOres = stats,probplot(dlLexamsexam plot=plt) p lt.showO0.0200.015O.OIC0.0C540603019Dmath score120Probabihty Plot3 m 3 3 M oVVV-10 1 Theoretical quantilesJohnson SU3-10 1Theoretical quantilesNormalfohnson

8、SU0.025 0-020 0-015 0-010 0-005 0-00 .020406080100writing scoresan-3 y P.I0120Probability Plot-3-2-10123Theoretical quantiles这些图片说明数据并不是完全服从正态分布,密度函数的尾部与 正态分布有些偏离,但大体还是可以认为近似服从正态分布的,如果 数据不服从正态分布,Z检验和T检验将是无法使用的。到U前为止 请注意,我们用的都是全部的数据哟,而假设检验的思想是用样本的 信息来推断总体的信息,所以接下来我们要从总体中取出样本。#从总体中随机抽取一定比例的样本df_exains

9、 = df_exams.sain ple(frac=l)假设检矗被用来以科学严谨的方式检验一个关于数据的理论,这 样我们就不会仅仅依赖于偶然性或主观假设。接下来我们要进行的是 两个正态总体均值的检验,以学生分数为例,就是去检验两个不同的 group的分数是否有明显的不同。当建立一个假设检验时,有一个原 假设和一个备择假设。还必须设置显著性水平,通常为5%(Scipy, stat smodel)。假设检验可以分为单尾或双尾。单尾的悄 况,例如,“A组得分B组” O双尾的情况例如A组的得分与B组 不同”。简单介绍了这些 接下来,我们从a组和B组各抽取50名学 生作为样本,然后计算该数据样本的Z分数

10、。Z分数可以回答这样一个问题:“一个给定数距离平均数多少个 标准差?”,在平均数之上的分数会得到一个正的标准分数,在平均数 之下的分数会得到一个负的标准分数。Z分数是一种可以看出某分数 在分布中相对位置的方法。groupa_sampie = df_examsclf_examsethnicity = group A gro up _a_sample = group_a_sa mp le:50 #绘制QQ图,检验正态性fig = p lt.figureOres = bplot(group_a_samplermath_scorel plot=plt) p lt.showO grou

11、p_b_sampie = dCexamsdCexams*ethnicity = group B gro up _b_sample = gro up_ b_sa mp le:50 fig = p lt.figureOres = bplot(group_b_samplermath_scorel pIot=plt) p lt.showO p rint(stats.zscore(gro up _a_samplemath_score) p rint(stats.zscore(gro up _b_samplermath_score1)Probability Plotineoreecd I

12、 quantilesProbability PlotTheoretical quantiles0.47126865 0.05544337 2.06526555 0.26335601 0.33266022 -0.01386084 0.26335601 -0.77620719 0.05544337 0.54057286 -1.67716196 -0.01386084-0.91481561 2.68900347 -1.19203247 1.37222342 -0.70690297 -0.56829455 0.7484855 -0.56829455 -0.70690297 -0.49899034 0.

13、26335601 L095006570.67918129 1.60785775 0.33266022 0.47126865 -0,2910777 -0.360381910.67918129 -0.8455114 -1.8850746 -042968612 0.7484855 -L46924932 -0.98411983 1.09500657 098411983 0.47126865 -0.15246927 L7880487 -0.2910777 0.1940518 -0.15246927 -0.56829455 0.12474758 2.48109083 -0.22177348-1.39994

14、511卜0.68278212 257240054 -0.05290932 -L69057861 0.26202709 -0.17888388 -0.24187116 0.57696349 0/7457694 -0.17888388 0.70293805 0.828912610.82891261 0.07306525 -0.93473124 -0.4308331.33281086 -0.87174396 1.5217727 1.899696380.57696349 0.13605253 -0.99771852 0.639950772.08865822 -0.36784572 1.64774726

15、 2509413260.45098893 -0367845720.26202709 099771852L08086173 0808756680.51397621 143862949-0.55680756 -0.36784572 -0.05290932 1.14384902-L50161677 0.32501437 0.07306525 0.13605253 0.13605253 0.95488717 L08086173 -0.61979484 0.19903981 -030485844z检验与总体平均值相同。 小于总体平均值。包中的ztest函数的一般用法如下:下面的代码是Z测试的一个示例。测

16、试是看A组样本的“数学平 均得分是否小于总体平均值。A组学生的平均“数学成绩”A组学生的平均“数学成绩”首先介绍一下statsmodels2te$t(x1, x2二None, value丸 alteriMtiveslwosidedl v输入缈:XIx2牺,第-伽伽值 飆 館二个ftWeS,默iWSattematrvevalue浮点型数值,若星郸f本.则vag歸本假设B3均氤若杲双样本,则刪ue是两个祥本均跚差值若为brger;备选懐设H1大于value值.若为smaller;备选假设H1小于value值输岀缈:zstatspvaiue#计算总体均值和样本均值pop ubtion_mean =

17、df_examsmath_score.mean()sain pl jgro up _a_mean = group_a_sam plemafh_scorcmenn() p rint( pop ubUon_mean,sample_group_a_mean) #这是单样本检验zstats, Pvalue = mstats.ztest(group_a_samplerm3th_scorelx2=None,value=populaUo n_mean,alternative=sinaner*)print(p value)66.089 6 L20.008850880637695917可以看出P值非常的小,小于

18、0%,则在显著性水平为5%的条件 下,我们要拒绝原假设T检翌社T检验中,假设样本为正态分布,且总体参数未知。有3种悄 况:独立样本t检验,比较两个样本所代表的两个总体均值是否存在显著 差异。除了要求样本来自正态分布,还要求两个样本的总体方差相等 (ttest_ind)配对样* t检验,配对样本主要是同一实验前后效果的比较,或者同 一样品用两种方法检验结果的比较。可以把配对样本的差作为变量 (ttest_rel)单样本t检验,单样本t检验是样本均值与总体均值的比较问题。其 中总体服从正态分布,总体的方差未知,从正态总体中抽样得到n个 个体组成抽样样本,计算抽样样本均值和标准差,判断总体均值与抽

19、样样本均值是否相同。(ttest_ls amp)下面是这3个假设检验的例子。注意:样本的随机性导致他们可能通 过也可能不通过假设,所以可能你得到的结论和我不同。独立样本t检验让我们来看看A组和B组在“数学成绩”功能上的得分是否不同。=样本组A的平均“数学成绩”与样本组B相同。=样本组A的平均“数学成绩”与样本组B不同。在5%显著性水平下测试。这是一个双尾检验。#当不确定两总体方差是否相等时,应先利用检验,检验两总体是否具 有方差齐性。P rint(stats.levenegroup_a_sa mp Ie*inath_score*,gro up _b_samplemath_score1) p r

20、int(gro up _a_sam plerm(Uh_scorelvar(),group_b_samplermath_scorelvar() (score,pvalue = stats.ttest_ind(gro up _a_siun pleTmathSCorelgro up_ b_sain plefmath score,equa!_var=False)print(p value) p rint(gro up _a_sam plermath_scorelmean(),group_b_samplcrmath_scorelmean()LeveneResult(statistic=0.3789408560110682. pvaIue=0.5395976230546553)212.44897959183675 257,198367346938803911416214807924661.2 63.84P值小于5%,则在显著性水平为5%的条件下,我们应拒绝原假设, 认为两组成绩不相同。配对样本t检验接下来看看A组在“数学成绩”和“阅读成绩”上的得分是否不 同。=样

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论