如何用Python计算Cronbach's Alpha

1,378 阅读2分钟

Cronbach's Alpha是一种衡量问卷或调查的内部一致性的方法。

Cronbach's Alpha的范围在0到1之间,数值越大,表明调查或问卷越可靠。

下面的例子显示了如何在Python中计算Cronbach's Alpha。

例子:在Python中计算Cronbach's Alpha

假设一个餐厅经理想测量顾客的总体满意度,所以她向10位顾客发出了调查问卷,让他们对餐厅的各种类别进行1到3的评分。

下面的pandas DataFrame显示了调查的结果:

import pandas as pd

#enter survey responses as a DataFrame
df = pd.DataFrame({'Q1': [1, 2, 2, 3, 2, 2, 3, 3, 2, 3],
                   'Q2': [1, 1, 1, 2, 3, 3, 2, 3, 3, 3],
                   'Q3': [1, 1, 2, 1, 2, 3, 3, 3, 2, 3]})

#view DataFrame
df

        Q1	Q2	Q3
0	1	1	1
1	2	1	1
2	2	1	2
3	3	2	1
4	2	3	2
5	2	3	3
6	3	2	3
7	3	3	3
8	2	3	2
9	3	3	3

为了计算调查回答的Cronbach's Alpha,我们可以使用pingouin库的cronbach_alpha()函数。

首先,我们要安装pingouin库:

pip install pingouin

接下来,我们将使用**cronbach_alpha()**函数来计算Cronbach's Alpha:

import pingouin as pg

pg.cronbach_alpha(data=df)

(0.7734375, array([0.336, 0.939]))

Cronbach's Alpha结果是0.773

Cronbach's Alpha的95%置信区间也已给出。[.336, .939].

注意:这个置信区间非常宽,因为我们的样本量太小了。在实践中,建议使用至少20个的样本量。为了简单起见,我们在这里使用的是10个样本量。

默认的置信区间是95%,但是我们可以使用ci参数指定一个不同的置信度。

import pingouin as pg

#calculate Cronbach's Alpha and corresponding 99% confidence interval
pg.cronbach_alpha(data=df, ci=.99)

(0.7734375, array([0.062, 0.962]))

Cronbach's Alpha的值保持不变,但是置信区间要宽得多,因为我们使用了一个较高的置信水平。

下表描述了不同的Cronbach's Alpha值通常是如何解释的。

Cronbach's Alpha内部一致性
0.9 ≤ α优秀
0.8 ≤ α < 0.9良好
0.7 ≤ α < 0.8可接受
0.6 ≤ α < 0.7有问题
0.5 ≤ α < 0.6较差
α < 0.5不可接受的

由于我们计算出的Cronbach's Alpha是0.773,我们会说这个调查的内部一致性是 "可接受的"。

奖励:请随意使用这个Cronbach's Alpha计算器,为一个给定的数据集寻找Cronbach's Alpha。