2016-05-23 17 views
0

を値の中央値を取得します。私は次のような構造を持つネストされた辞書を持っているネストされた辞書に

Clusters{Cluster_X :{accession1: 8, accession2: 3, accession3: 7}, Cluster_Y :{accession1: 7.....}} 

辞書には、シーケンスの長さのキーとしてアクセッション番号を持つDNA配列のクラスターを表します。さて、辞書の各サブ辞書について、それぞれのサブ辞書のシーケンス長の中央値を表すキーを抽出したいと思います。

誰かがそれを行う方法を知っていますか?

答えて

1

各サブ辞書のメジアンと対応するキーを印刷するための単なるサンプルです。 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] 
関連する問題