将字典值按顺序添加到 scipy 函数

问题描述

我想为字典的每个键计算 p 值并为 (键 | p 值) 创建一个表。

示例字典:

mydict = {
'a': [100,5,4,3],'b': [66,75,12],'c': [56,11,80,0]}

如何将每个键的 4 个值按顺序插入到 Scipy 函数中?

使用 Scipy 函数计算 a 的 p 值示例:

import scipy.stats as stats
oddsratio,pvalue = stats.fisher_exact([[100,5],[4,3]])
pvalue

感谢所有帮助

谢谢

解决方法

你可以这样做:

mydict = {
    'a': [100,5,4,3],'b': [66,75,12],'c': [56,11,80,0],}

results = {k: stats.fisher_exact([v[:2],v[2:]]) for k,v in mydict.items()}
pvalues = {k: pvalue for k,(oddsratio,pvalue) in results.items()}