python怎么做q检验_统计学_Cochran’s Q Test(python代码实现)
醫(yī)藥項(xiàng)目統(tǒng)計(jì)聯(lián)系QQ:231469242
cochran Q 測(cè)試用于非參數(shù)檢驗(yàn),特別是對(duì)分,二分
成功或失敗
有效或無效
活著或死了
有缺陷的或無缺陷的
python代碼
無顯著差異,結(jié)論一致
# -*- coding: utf-8 -*-
# Import standard packages
import numpy as np
import pandas as pd
# additional packages
from statsmodels.sandbox.stats.runs import cochrans_q
obs = np.array([[1,1,0,1,0,1,1,1,0,0,1,1],
[1,1,1,1,0,1,1,1,0,1,1,1],
[1,1,0,0,0,1,1,0,1,0,1,1]])
def cochranQ(obs):
'''Cochran's Q test: 12 subjects are asked to perform 3 tasks. The outcome of each task is "success" or
"failure". The results are coded 0 for failure and 1 for success. In the example, subject 1 was successful
in task 2, but failed tasks 1 and 3.
Is there a difference between the performance on the three tasks?
'''
# I prefer a DataFrame here, as it indicates directly what the values mean
df = pd.DataFrame(obs.T, columns = ['Diet1', 'Diet2', 'Diet3'])
# --- >>> START stats <<< ---
(Q, pVal) = cochrans_q(df)
# --- >>> STOP stats <<< ---
print('\nCOCHRAN\'S Q -----------------------------------------------------')
print('Q = {0:5.3f}, p = {1:5.3f}'.format(Q, pVal))
if pVal < 0.05:
print("H1 wins,There is a significant difference between the three tasks.")
else:
print("H0 wins,There was no significant change")
cochranQ(obs)
測(cè)試,12個(gè)對(duì)象參加三種考試,檢驗(yàn)三種考試難度是否一樣。
H0,三種考試難度相同
H1,三種考試難度不同,至少有一個(gè)簡(jiǎn)單或難
三種考試有顯著差異
總結(jié)
以上是生活随笔為你收集整理的python怎么做q检验_统计学_Cochran’s Q Test(python代码实现)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: yii2 请求外部api_微服务架构之「
- 下一篇: python读取ini文件编码格式_Py