我想在Python中运行卡方检验。我已经编写了代码来执行此操作,但是由于scipy文档非常稀少,我不知道自己是否做得对。
首先说一下背景: 我有两组用户。我的零假设是,无论是哪组的人更有可能使用桌面、移动设备还是平板电脑,都没有显着差异。
这些是两组的观察到频率:
[[u'desktop', 14452], [u'mobile', 4073], [u'tablet', 4287]]
[[u'desktop', 30864], [u'mobile', 11439], [u'tablet', 9887]]
这是我的代码,使用scipy.stats.chi2_contingency
:
obs = np.array([[14452, 4073, 4287], [30864, 11439, 9887]])
chi2, p, dof, expected = stats.chi2_contingency(obs)
print p
这给了我一个p值为2.02258737401e-38
,显然是显著的。
我的问题是:这段代码看起来有效吗?特别是,考虑到我的数据,我不确定是否应该使用scipy.stats.chi2_contingency
还是scipy.stats.chisquare
。