Ich möchte Spalten von Datenrahmen in einer solchen Art und Weise verschmelzen:Zusammenführen von Spalten, die Listenwerte enthalten, wenn einige Spaltenlistenwerte leer sind?
list_A list_B
A, T, G G, C
B, K
C, L, AG L, AG, K
F, K
Die Ausgabe sollte:
list_A list_B list_A&B
A, T, G G, C A, T, G, C
B, K B, K
C, L, AG L, AG, K C, L, AG, K
F, K F, K
ich getan habe:
df['list_A&B'] = df['list_A'].astype(list) + ', ' + df['list_B'].astype(list)
Und, Ich bekomme:
list_A list_B list_A&B
0 A, T, G G, C A, T, G, G, C
1 NaN B, K NaN
2 C, L, AG L, AG, K C, L, AG, L, AG, K
3 F, K NaN NaN
Hier ist die Vereinigung der Liste ein Problem, wenn eine der Liste leer ist. Aber warum?
Ich versuchte dann als String Gewerkschaftlichkeit aber jetzt ist das hinzugefügt nan nicht gelöscht werden kann: df['list_A&B'] = df['list_A'].astype(str) + ', ' + df['list_B'].astype(str)
die gibt:
list_A list_B list_A&B
0 A, T, G G, C A, T, G, G, C
1 NaN B, K nan, B, K
2 C, L, AG L, AG, K C, L, AG, L, AG, K
3 F, K NaN F, K, nan
Mit diesem Ausgang, Ich habe Schwierigkeiten beim 'nan' entfernen da sie als Strings gemeldet werden und dropna() und fillna() nicht damit arbeiten.
Irgendwelche Vorschläge! - K
Was sind die tatsächlichen Werte in Spalten? Sind sie nur Saiten wie "A, T, G"? Was sind die leeren Werte? Sind sie leere Saiten? Können Sie ein Beispiel mit Beispieldaten bereitstellen (d. H. Den Code zum Generieren Ihres Beispieldatenrahmens)? – BrenBarn
Die tatsächlichen Werte in den Spalten sind eine Liste von Buchstaben oder Zeichenfolgen.Die Spalten sind tabulatorgetrennt und alle leeren Werte in der Spalte sind leere Strings 'dh die leeren Zeilen-/Spaltenzellen sind nur Tab-Sprünge ohne Leerraum, um den leeren Wert/Liste darzustellen. Dieser Datenrahmen wurde erzeugt, indem zwei Datenrahmen mit Pandas verbunden wurden Zusammenführungsfunktion, wobei die leeren Werte (NaN) sind. Die Schlüssel zum Zusammenführen sind nicht ganz relevant (ich denke) und nicht gezeigt. – everestial007
Ich sehe keine Listen in Ihren Daten. Wenn es Listen gäbe, würde ich erwarten, dass der Wert z.B. '["A", "T", "G"] 'ist. – BrenBarn