Ich habe zwei Liste: eine ist eine ausgewählte Liste von etwa 2 Millionen Chromosomen-Positionen (z. B. [9866, 9899, 10257 ....]). Die andere ist eine gepaarte Liste mit Chromosomenposition und pvalue (zB [(9866, 0.001), (9899, 0.05)] ...)Finden Sie Elemente in einer Liste gepaarter Elemente mit einer anderen Liste (Python)
Ich möchte den p-Wert für das ausgewählte 2 Millionen Chromosom abrufen . Mein Code ist zur Zeit wie folgt:
Selection = []
for i in selected indices:
for x in list(range(len(T3))):
if T3[x][0] == i:
b = T3[x][0],T3[x][1]
Selection.append(b)
Gibt es einen schnellsten Weg, dies zu tun? Offensichtlich ist dies sehr langsam, da es für jede Zeile in T3 und für jedes Element in ausgewählten Indizes iteriert. Ich dachte, die Set-Funktion verwenden, aber meine T3-Liste ist eine Liste der gekoppelten Elemente
Warum verwenden Sie Ihre erste Liste, wenn Sie die Positionen in Ihrem zweiten haben? Ich verstehe nicht, was du machen willst. Zeigen Sie Ihre erwartete Ausgabe bitte – MMF
Ich habe die Position in der zweiten Liste, aber es gibt etwa 1,4 Milliarden Positionen und ich möchte nur die 2 Millionen aus der anderen Liste auswählen – CenCG
Jetzt ist es klarer ... – MMF