数学建模从五个专家对101个人打分的的数据中检验其中专家哪个打分最严格,哪个打分最宽松,使用假设检验法,并给出相应代码和例题
时间: 2024-05-04 13:22:31 浏览: 120
数学建模-假设检验.PPT
假设检验法是用来判断样本数据是否支持某种假设的一种统计方法,在本题中,我们可以使用假设检验法来判断哪个专家打分最严格或最宽松。具体步骤如下:
1. 假设检验的零假设为:五个专家打分的严格程度没有显著差异。
2. 设计备选假设:五个专家打分的严格程度存在显著差异。
3. 根据样本数据计算出相应的统计量和p值。
4. 根据p值判断是否拒绝零假设。
5. 如果拒绝零假设,则说明存在显著差异,可以使用其他方法进一步判断哪个专家打分最严格或最宽松。
下面给出一个简单的例子,假设我们有以下五个专家对101个人的打分数据:
| 专家1 | 专家2 | 专家3 | 专家4 | 专家5 |
|-------|-------|-------|-------|-------|
| 70 | 80 | 75 | 90 | 85 |
| 60 | 70 | 80 | 70 | 75 |
| ... | ... | ... | ... | ... |
| 85 | 90 | 70 | 80 | 75 |
我们可以使用单因素方差分析来进行假设检验,代码如下:
```python
import pandas as pd
import scipy.stats as stats
# 构造数据
data = pd.DataFrame({
'expert1': [70, 60, 80, 85, ...],
'expert2': [80, 70, 90, 90, ...],
'expert3': [75, 80, 70, 85, ...],
'expert4': [90, 70, 80, 70, ...],
'expert5': [85, 75, 75, 75, ...]
})
# 单因素方差分析
f_statistic, p_value = stats.f_oneway(
data['expert1'], data['expert2'], data['expert3'], data['expert4'], data['expert5']
)
# 打印结果
print('F值:', f_statistic)
print('p值:', p_value)
```
如果p值小于显著性水平(一般为0.05),则可以拒绝零假设,说明五个专家打分的严格程度存在显著差异。我们可以进一步使用Tukey HSD方法来确定哪个专家打分最严格或最宽松,代码如下:
```python
# Tukey HSD方法
from statsmodels.stats.multicomp import pairwise_tukeyhsd
# 将数据转换成长格式
data_long = pd.melt(data.reset_index(), id_vars=['index'], value_vars=['expert1', 'expert2', 'expert3', 'expert4', 'expert5'])
# 执行Tukey HSD方法
tukey_results = pairwise_tukeyhsd(
data_long['value'], data_long['variable'], alpha=0.05
)
# 打印结果
print(tukey_results.summary())
```
Tukey HSD方法的输出中,reject字段表示是否拒绝两个专家之间没有显著差异的假设,如果为True,则说明两个专家之间存在显著差异。我们可以根据mean_diff字段来判断哪个专家打分最严格或最宽松,如果mean_diff为正,则说明前面的专家打分更宽松,如果为负,则说明后面的专家打分更宽松。
阅读全文