如何解决了解scipy.stats.chisquare
有人可以通过scipy.stats.chisquare帮助我吗?我没有统计/数学背景,因此我正在使用来自https://en.wikipedia.org/wiki/Chi-squared_test
的数据集来学习scipy.stats.chisquareWikipedia文章以下表为例,指出基于该值的卡方值约为24.6。我将使用scipy.stats验证此值并计算相关的p值。
https://docs.scipy.org/doc/scipy/reference/generated/scipy.stats.chisquare.html
由于我是统计学的新手,也不确定使用scipy.stats.chisquare,因此我不确定最佳方法,以及如何最好地将提供的表中的数据输入到数组中,以及是否提供期望值?来自Wikipedia。
解决方法
该数据为contingency table。 SciPy具有函数scipy.stats.chi2_contingency
,该函数将卡方检验应用于列联表。从根本上来说,这只是一个规则的卡方检验,但是当应用于列联表时,预期频率是在独立性假设下计算的(chi2_contingency
会为您做这件事),而自由度取决于数量行和列(chi2_contingency
也会为您计算)。
以下是将卡方检验应用于该表的方法:
import numpy as np
from scipy.stats import chi2_contingency
table = np.array([[90,60,104,95],[30,50,51,20],40,45,35]])
chi2,p,dof,expected = chi2_contingency(table)
print(f"chi2 statistic: {chi2:.5g}")
print(f"p-value: {p:.5g}")
print(f"degrees of freedom: {dof}")
print("expected frequencies:")
print(expected)
输出:
chi2 statistic: 24.571
p-value: 0.00040984
degrees of freedom: 6
expected frequencies:
[[ 80.53846154 80.53846154 107.38461538 80.53846154]
[ 34.84615385 34.84615385 46.46153846 34.84615385]
[ 34.61538462 34.61538462 46.15384615 34.61538462]]
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。