<div dir="ltr">i am having some difficulty in applying this to my actual problem although i love the dictionary method. Imagine the following three lists are the first, second and third elements of a larger list: <div><br>

</div><div><div>>>> comp[6]</div><div>['6558', 'NM_001046.2', 'SLC12A2', '6037226', '2', 'chr5', '127502453', '127502454', 'het-ref', 'snp', 'A', 'T', 'A', '185', '113', '184', '112', 'VQHIGH', 'VQHIGH', '', '', '', '', '259974', '9', '6', '6', '15', '6558:NM_001046.2:SLC12A2:CDS:MISSENSE', '6558:NM_001046.2:SLC12A2:CDS:NO-CHANGE', 'PFAM:PF01490:Aa_trans', '', '', '', '0.99', '2', '0.99', '0.998', '1.01', '1.000', '0.5', '0.46', '0.5', '1', '18', '18', '19', 'ref-identical;onlyA', 'snp', '0.072', '-1', 'SQHIGH']</div>

<div><br></div><div><div>>>> comp[7]</div><div>['1302', 'NM_080679.2', 'COL11A2', '6525172', '2', 'chr6', '33271374', '33271376', 'het-ref', 'del', 'GT', '', 'GT', '542', '542', '458', '458', 'VQHIGH', 'VQHIGH', '', '', '', '', '71150', '34', '106', '106', '140', '1302:NM_080679.2:COL11A2:TSS-UPSTREAM:UNKNOWN-INC', '1302:NM_080679.2:COL11A2:TSS-UPSTREAM:UNKNOWN-INC;1302:NM_080680.2:COL11A2:TSS-UPSTREAM:UNKNOWN-INC;1302:NM_080681.2:COL11A2:TSS-UPSTREAM:UNKNOWN-INC;6257:NM_021976.3:RXRB:CDS:NO-CHANGE', '', '', '', '', '0.95', '2', '0.98', '0.998', '0.99', '1.000', '0.46', '0.42', '0.5', '0', '102', '102', '102', 'ref-identical;onlyA', 'del', '0.990', '6', 'SQHIGH']</div>
<div><br></div>
<div>>>> comp[8]</div><div>['1302', 'NM_080680.2', 'COL11A2', '6525172', '2', 'chr6', '33271374', '33271376', 'het-ref', 'del', 'GT', '', 'GT', '542', '542', '458', '458', 'VQHIGH', 'VQHIGH', '', '', '', '', '71150', '34', '106', '106', '140', '1302:NM_080680.2:COL11A2:TSS-UPSTREAM:UNKNOWN-INC', '1302:NM_080679.2:COL11A2:TSS-UPSTREAM:UNKNOWN-INC;1302:NM_080680.2:COL11A2:TSS-UPSTREAM:UNKNOWN-INC;1302:NM_080681.2:COL11A2:TSS-UPSTREAM:UNKNOWN-INC;6257:NM_021976.3:RXRB:CDS:NO-CHANGE', '', '', '', '', '0.95', '2', '0.98', '0.998', '0.99', '1.000', '0.46', '0.42', '0.5', '0', '102', '102', '102', 'ref-identical;onlyA', 'del', '0.990', '6', 'SQHIGH']</div>

<div>>>> </div><div><br></div><div>------</div><div>Can we apply the dictionary method to the problem where the key of the dictionary is the first element of the three smaller lists ('6558','1302', '1302'). The second and third elements of the larger list (starting with '1302') need to be collapsed into a single element, based on their second element ( 'NM_080679.2') and ('NM_080680.2') in a way similar to how we had tackled the toy problem:</div>
<div><br></div><div><span class="Apple-style-span" style="border-collapse:collapse;font-family:arial,sans-serif;font-size:13px">x = [['cat', 'NM123', 12], ['cat', 'NM234', 12], ['dog', 'NM56', 65]]<br>
</span></div><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Thu, Dec 5, 2013 at 4:18 AM, Michiel Overtoom <span dir="ltr"><<a href="mailto:motoom@xs4all.nl" target="_blank">motoom@xs4all.nl</a>></span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><br>
On Dec 5, 2013, at 10:09, Vikram K wrote:<br>
<br>
</div><div>> another option could have been to obtain a dictionary like so:<br>
</div><div>> {'dog': ['NM56', 65], 'cat': ['NM123,NM234', 12]}<br>
<br>
</div>Oh, in that case the code can become somewhat simpler:<br>
<br>
x = [['cat', 'NM123', 12], ['cat', 'NM234', 12], ['dog', 'NM56', 65]]<br>
<br>
d = {}<br>
<div>for key, label, quant in x:<br>
    if key in d:<br>
        d[key][0] += ", " + label<br>
    else:<br>
        d[key] = [label, quant]<br>
<br>
</div>print d<br>
<br>
<br>
I agree with Michael that the problem is somewhat underspecified, but it's a starting point.<br>
<div><div><br>
Greetings,<br>
<br>
--<br>
"If you don't know, the thing to do is not to get scared, but to learn." - Ayn Rand<br>
<br>
<br>
<br>
</div></div></blockquote></div><br></div></div></div></div>