获取嵌套字典中值的中位数
Get median of values in nested dictionary
我有一个具有以下结构的嵌套字典:
Clusters{Cluster_X :{accession1: 8, accession2: 3, accession3: 7}, Cluster_Y :{accession1: 7.....}}
字典表示 DNA 序列簇,登录号作为序列长度的关键字。现在,对于 dictonary 中的每个子词典,我想提取代表相应子词典的序列长度中位数的键。
有人知道怎么做吗?
打印每个子词典的中位数和对应的键只是一个示例。在 for 循环中,我们构建了一个列表 l
,它由一对序列长度和一个键组成。然后 l
按长度排序。
Clusters = {"Cluster_X" :{"accession1": 8, "accession2": 3, "accession3": 7}," Cluster_Y" :{"accession1": 7, "accession2": 10}}
for c in Clusters:
l = [[m,k] for k, m in Clusters[c].items()]
l.sort()
print 'median:', l[len(l)//2][0], ' key:', l[len(l)//2][1]
我有一个具有以下结构的嵌套字典:
Clusters{Cluster_X :{accession1: 8, accession2: 3, accession3: 7}, Cluster_Y :{accession1: 7.....}}
字典表示 DNA 序列簇,登录号作为序列长度的关键字。现在,对于 dictonary 中的每个子词典,我想提取代表相应子词典的序列长度中位数的键。
有人知道怎么做吗?
打印每个子词典的中位数和对应的键只是一个示例。在 for 循环中,我们构建了一个列表 l
,它由一对序列长度和一个键组成。然后 l
按长度排序。
Clusters = {"Cluster_X" :{"accession1": 8, "accession2": 3, "accession3": 7}," Cluster_Y" :{"accession1": 7, "accession2": 10}}
for c in Clusters:
l = [[m,k] for k, m in Clusters[c].items()]
l.sort()
print 'median:', l[len(l)//2][0], ' key:', l[len(l)//2][1]