Als Teil einer großen Funktion bin ich mit einer der letzten Zeilen fest. Ich sollte den Zeilen- und Spaltennamen der höchsten (wenigen) Werte in einem (Pandas) Datenrahmen erhalten. Dafür habe ich es entstapelt, sortiert und die letzten 2 Zeilen ausgedruckt. Verwendung:Erhalte verschiedene Objekte aus dem in64-Datentyp return
df2=zerotriangle_frame.unstack()
sorted_df = df2.sort_values(inplace=True)
x = df2[-2:]
Dies resultiert in:
seq_6120 seq_1761 34
seq_4833 seq_1761 37
dtype: int64
Dieses gut ist (beziehungsweise: seq_4833 und seq_1761 sind Zeilen- und Spaltennamen höchsten Wert (höchste Sequenz simmilarity in Zusammenhang ähnelt) in Datenrahmen, seq_6120 und seq_1761 ähnlich dem zweithöchsten Wert ...), aber ich möchte diese Ausgabe irgendwie formatieren, damit ich die verschiedenen Teile in einer Druckabteilung benutzen kann. zum Beispiel:
print("sequenc {0} and sequence {1} got the highest simmilarity value:{2}".format(a, b, c))
wobei a, b und c sollten jeweils seq_4833, seq_1761 und 37 sein ... Wenn das Ergebnis eine Liste oder Tupel war ich es gespalten konnte, aber jetzt stecken ich bin.
PS: Wenn die Werte (34 und 37 im Beispiel) gleich sind, sollte ich eine spezifische Fehlermeldung ausgeben (wie 'mehr als ein Paar Sequenzen mit der gleichen Ähnlichkeit').
, die irgendwie ein Problem ... –
Ich kann nicht mein Ergebnis in einen Datenrahmen mit Spaltennamen a, b und c machen ... Also, was Sie in meiner Frage sehen x ist. Wenn ich dies in einen Datenrahmen umwandeln möchte, mache ich: df2 = pd.DataFrame (x, Spalten = ['a', 'b', 'c'], aber das funktioniert nicht –
X ist eine Serie. Do x. reset_index() Und dann haben Sie einen Datenrahmen –