首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >比较两个以上组的比例和统计意义

比较两个以上组的比例和统计意义
EN

Stack Overflow用户
提问于 2019-05-20 22:45:19
回答 2查看 202关注 0票数 0

我创建了一个数据帧来比较三个或更多组的比例(Real data有超过50,000行)。在左栏中,0表示存活,1表示死亡,右栏中的0,1,2,3表示等级。

在示例数据帧中,不同等级的比例似乎没有不同,但我想要导出p值,无论这是否在统计上有意义。

从例子中获得的存活率如下。

0级57.14%

一级66.66%

等级2 50.0%

等级3 60.0%

我试着同时使用Kai和Anova测试。但是,我不知道哪种方法是正确的。

ex_df = pd.DataFrame({"Survive":[0,0,0,0,0,0,0,1,1,1,0,1,1,1,0,0,0,1,1,1,0,0,0,1],
              "grade":[2,1,2,3,0,0,0,3,0,2,1,1,0,0,0,1,2,3,1,2,1,3,3,2]})

我想要计算p值

P-值:0.xxxx....

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-06-03 01:12:48

这是一个最好用逻辑回归分析的问题。(所提出的对整个样本使用年级组的二项式检验的方法在统计学上是不正确的。)使用R(因为我不是pythonista)可以很容易地演示它,并且我怀疑有一个类似的python。R结果可用于检查任何Python实现的正确性。正如您所看到的,Pandas中的数据帧结构是从R复制的,它的许多统计例程也是如此:

ex_df = data.frame(Survive = c(0,0,0,0,0,0,0,1,1,1,0,1,1,1,0,0,0,1,1,1,0,0,0,1),
               grade=factor(c(2,1,2,3,0,0,0,3,0,2,1,1,0,0,0,1,2,3,1,2,1,3,3,2)) )
 glm(Survive~grade, data=ex_df, family="binomial")
#--- output---
Call:  glm(formula = Survive ~ grade, family = "binomial", data = ex_df)

Coefficients:
(Intercept)       grade1       grade2       grade3  
    -0.2877      -0.4055       0.2877      -0.1178  

Degrees of Freedom: 23 Total (i.e. Null);  20 Residual
Null Deviance:      32.6 
Residual Deviance: 32.25    AIC: 40.25
#----------

summary( glm(Survive~grade, data=ex_df, family="binomial") )
#-------output------
Call:
glm(formula = Survive ~ grade, family = "binomial", data = ex_df)

Deviance Residuals: 
    Min       1Q   Median       3Q      Max  
-1.1774  -1.0579  -0.9005   1.3018   1.4823  

Coefficients:
            Estimate Std. Error z value Pr(>|z|)
(Intercept)  -0.2877     0.7638  -0.377    0.706
grade1       -0.4055     1.1547  -0.351    0.725
grade2        0.2877     1.1180   0.257    0.797
grade3       -0.1178     1.1902  -0.099    0.921

(Dispersion parameter for binomial family taken to be 1)

    Null deviance: 32.601  on 23  degrees of freedom
Residual deviance: 32.247  on 20  degrees of freedom
AIC: 40.247

Number of Fisher Scoring iterations: 4
票数 0
EN

Stack Overflow用户

发布于 2019-05-31 15:11:33

方差分析要求你的数据是正态分布的,而你的数据显然不是正态分布的(只有0和1)。你可以通过假设存活概率为数据中的1的总数除以测量的总数来尝试binomial test,而不考虑年级。然后对每个年级做一个二项式测试。我链接到的python函数返回p值。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56223324

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档