我是Python中的statsmodels函数,它返回一个嵌套字典和其中的元组。我想根据一个特定的值来查找主键值,但我似乎无法找到它,因为字典是多嵌套的,其中包含看起来像元组的内容
字典名为=testresult,它返回值0.06066703605850239作为输出。我想将其映射回与之相关的高级密钥,但尝试类似于此的操作会返回“密钥不存在”,即找不到值:
def GetKey(val):
for key, value in testresult.items():
if val == value:
return key
return "key doesn't exist"
print(GetKey(0.06066703605850239))
字典的实际输出如下。仅显示前三个键。我所要做的就是将高级键映射回valye,这里是键2,即匹配在这一行 “'ssr_chi2test':(5.604709583431151,0.06066703605850239,2)”映射回键2
测试结果输出:
{1: ({'ssr_ftest': (2.8419033957600366, 0.09231901211324843, 645.0, 1),
'ssr_chi2test': (2.8551215510891534, 0.09108335476517923, 1),
'lrtest': (2.84885005932847, 0.09143931932517006, 1),
'params_ftest': (2.8419033957602227, 0.09231901211323784, 645.0, 1.0)},
[<statsmodels.regression.linear_model.RegressionResultsWrapper at 0x1570bc161c8>,
<statsmodels.regression.linear_model.RegressionResultsWrapper at 0x1570b993d08>,
array([[0., 1., 0.]])]),
2: ({'ssr_ftest': (2.780698263186089, 0.06274205544426932, 642.0, 2),
'ssr_chi2test': (5.604709583431151, 0.06066703605850239, 2),
'lrtest': (5.580573162296787, 0.061403614274963624, 2),
'params_ftest': (2.780698263186609, 0.0627420554442373, 642.0, 2.0)},
[<statsmodels.regression.linear_model.RegressionResultsWrapper at 0x1570bc78cc8>,
<statsmodels.regression.linear_model.RegressionResultsWrapper at 0x1570bc6c448>,
array([[0., 0., 1., 0., 0.],
[0., 0., 0., 1., 0.]])]),
3: ({'ssr_ftest': (2.1251237213749516, 0.09582281329876917, 639.0, 3),
'ssr_chi2test': (6.445210910836708, 0.09184847479199953, 3),
'lrtest': (6.4132709026562225, 0.09314635939984041, 3),
'params_ftest': (2.125123721374674, 0.09582281329880636, 639.0, 3.0)},
[<statsmodels.regression.linear_model.RegressionResultsWrapper at 0x1570bc60d48>,
<statsmodels.regression.linear_model.RegressionResultsWrapper at 0x1570bc60e88>,
array([[0., 0., 0., 1., 0., 0., 0.],
[0., 0., 0., 0., 1., 0., 0.],
[0., 0., 0., 0., 0., 1., 0.]])])
我一直在努力解决这个问题,并且花了很多时间试图解决这个问题,所以任何帮助都会非常有用并且节省时间。我正在使用Python 3.7
谢谢
卢卡斯
你需要找到合适的元素
相关问题 更多 >
编程相关推荐