擅长:python、mysql、java
<p>首先:将bList转换为dict</p>
<pre><code>bDict = {
('barcode1', 'mut1'): 184,
('barcode1_mut', 'mut2'): 2,
('barcode2', 'mut3'): 136,
('barcode2', 'mut4'): 1,
('barcode2', 'mut5'): 1,
('barcode3', 'mut6'): 373,
('barcode3', 'mut7'): 2}
</code></pre>
<p>第二:用相同的条形码组合值。你知道吗</p>
<pre><code>mDict = {}
for x, y in bDict.items():
if mDict.get(x[0]) == None:
mDict[x[0]] = [(x[1], y)]
else:
mDict[x[0]].append((x[1], y))
>>>print(mDict)
{'barcode1': [('mut1', 184)],
'barcode1_mut': [('mut2', 2)],
'barcode2': [('mut3', 136), ('mut4', 1), ('mut5', 1)],
'barcode3': [('mut6', 373), ('mut7', 2)]}
</code></pre>
<p>第三:将结果分配给唯一的条形码。你知道吗</p>
<pre><code>seqDict = {x: {y[0]: mDict[y[0]] for y in aDict[x]} for x in aDict.keys()}
</code></pre>