【发布时间】:2021-04-08 14:21:49
【问题描述】:
我有两组不同的样本:samples1 和 samples2。
此外,我有 18 个不同的元素,对于每个元素,分别使用 samples1 和 samples2 的所有样本获得的相应分数。
例如:
score_samples1[0] 表示使用 samples1 的所有样本获得的第一个元素的分数。
score_samples2[0] 表示使用 samples2 的所有样本获得的第一个元素的分数。
现在,我想比较这两个样本组之间的差异,并了解这种差异是否具有统计显着性。 如下所示,我应用了 t 检验得到了一个 p 值来评估显着性。
我的问题如下: 有没有办法得出优势比和 p 值来查看差异是否显着?
from scipy import stats
import statistics
score_samples1=[1.430442073, 1.347975371, 1.175088823, 1.20141693, 1.152665995, 1.105591463, 1.343297357, 1.251526193, 1.107442697, 1.302090741, 1.312426241, 1.24880381, 1.46855296, 1.12369795, 1.344426189, 1.24276685, 1.216269219, 1.172317535]
score_samples2=[1.663793448, 1.506660754, 1.387285644, 1.440433062, 1.367680224, 1.340102236, 1.632881551, 1.522894543, 1.137437101,1.581845495, 1.540401185, 1.549114159, 1.558038893, 1.392571495, 1.532717551, 1.451731862, 1.277597967, 1.336609308]
stats.ttest_ind(score_samples1,score_samples2)
stats.ttest_ind(score_samples1,score_samples2, equal_var=False)
Ttest_indResult(statistic=-5.03264933189511, pvalue=1.7512132919948795e-05)
#Paired t-test
stats.ttest_rel(score_samples1,score_samples2)
Ttest_relResult(statistic=-11.148411105604898, pvalue=3.0763665473016024e-09)
假设我将分数分类如下:
scores_ge_cutoff_samples1=[1 if x>=1.30 else 0 for x in score_samples1]
scores_ge_cutoff_samples2=[1 if x>=1.30 else 0 for x in score_samples2]
scores_ge_cutoff_samples1
[1, 1, 0, 0, 0, 0, 1, 0, 0, 1, 1, 0, 1, 0, 1, 0, 0, 0]
scores_ge_cutoff_samples2
[1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 0, 1]
oddsratio, pvalue = stats.fisher_exact([[16, 2], [7, 11]])
pvalue
0.004510832141532924
oddsratio
12.571428571428571
基于此分析,我们可以得出结论,样本 2 得分>=1.30 的可能性是样本 1 得分>=1.30 的 12.57 倍。
但是,我的目标是获取 samples1 和 samples2 分数之间差异的优势比。
【问题讨论】:
-
我不知道你会如何使用回归来获得优势比:它是从分类结果中直接计算出来的。
-
@Prune 知道了。编辑了问题。
-
“差异的优势比......”是什么意思?
-
在所有的 t 检验中我得到了一个 p 值,我还能得到一个优势比吗?
-
或者有没有办法应用逻辑回归并通过逻辑回归获得优势比?
标签: python p-value continuous