2017-08-30 96 views
2

我想估计所需的样本大小,以便使用Python计算离散数据的Chi Squared(均匀性测试)测试,并且需要提示如何执行此操作。估计Chi Squared测试所需的样本大小

一般来说,我想估计两个生产过程的失败率是否显着不同(α= 5%)。

我只发现statsmodels.stats.gof.chisquare_effectsize()功能,但这似乎只适用于良好的配合测试。

有什么办法可以确定所需的样本量吗?

我很感谢每一个答案。

回答

2

您可以使用statsmodels.stats.GofChisquarePower()。solve_power() 但是,您需要调整自由度(df)以说明变量的数量。您可以使用n_bins参数完成此操作。

>>>import statsmodels.stats.power as smp 
>>>n_levels_variable_a = 2 
>>>n_levels_variable_b = 3 
>>>smp.GofChisquarePower().solve_power(0.346, power=.8, n_bins=(n_levels_variable_a-1)*(n_levels_variable_b-1), alpha=0.05) 

115.94688728433769

+0

我能得到它的权利是:1。n_bins是我想比较的组数?在我的情况n_bins = 2,因为我有两条生产线。 2.效应大小描述了两条生产线的平均值之间的差异。因此它是一种置信区间,这个值越低,样本量就越大。 – 2Obe

+0

@ 2Obe我的错误,我看到我误解了你的帖子,并认为你正在寻找_independence_的测试。 – BirdLaw

+0

对于同质性,数学是相同的,但自由度(在这种情况下n_bins)应该是(number_of_rows -1)*(number_of_columns-1)其中number_of_rows(和columns)是列联表中的行数和列数。 (例如,如果你有两个变量,'性别'和'政治派别'),你可能会有(2-1)*(2-1) – BirdLaw