So fügen Sie ein Wort in der Mitte der Spaltennamen hinzu. Wie Suffix, aber nicht am Ende: Beispiel:Umbenennen aller Spaltennamen
value_1 value_2 VALUE_3
gewünschte Ausgabe: value_session_1 value_session_2 value_session_3
So fügen Sie ein Wort in der Mitte der Spaltennamen hinzu. Wie Suffix, aber nicht am Ende: Beispiel:Umbenennen aller Spaltennamen
value_1 value_2 VALUE_3
gewünschte Ausgabe: value_session_1 value_session_2 value_session_3
Verwendung map
mit format
gibt es möglich add auch Zeichenfolge vor oder nach:
df.columns = df.columns.map(lambda x: '{0[0]}_session_{0[1]}'.format(x.split('_')))
Oder Lösung von comment of John Galt mit str.replace
:
df.columns = df.columns.str.replace('_', '_session_')
Samples:
df = pd.DataFrame(columns=['value_1','value_2','value_3'])
print (df)
Empty DataFrame
Columns: [value_1, value_2, value_3]
Index: []
df.columns = df.columns.map(lambda x: '{0[0]}_session_{0[1]}'.format(x.split('_')))
print (df)
Empty DataFrame
Columns: [value_session_1, value_session_2, value_session_3]
Index: []
df.columns = df.columns.str.replace('_', '_session_')
print (df)
Columns: [value_session_1, value_session_2, value_session_3]
Index: []
EDIT:
df = pd.DataFrame(columns=['va_lue_1','va_lue_2','va_lue_3'])
print (df)
Empty DataFrame
Columns: [va_lue_1, va_lue_2, va_lue_3]
Index: []
df.columns = df.columns.map(lambda x: '{0[0]}_session_{0[1]}'.format(x.rsplit('_', 1)))
print (df)
Empty DataFrame
Columns: [va_lue_session_1, va_lue_session_2, va_lue_session_3]
Index: []
Danke, aber was, wenn ich mehr als ein '_' im Spaltennamen habe? Wie wähle ich den letzten aus? Eigentlich habe ich wo zwei '_' erschien, jetzt mehr als zwei, also wie wählen Sie secont '_' – jovicbg
Längste Antwort vielleicht nicht die beste Antwort. – staticor
Verwenden Sie 'rsplit', checl Letzte Änderung. – jezrael
replacing ist einfach genug und sollte funktionieren:
df.columns = df.columns.str.replace('_','_session')
Hoffnung, die dazu beigetragen. Glückliche Kodierung.
EDIT: wie @jezrael erwähnt
'df.columns = df.columns.str.replace ('_', '_SESSION _')'? – Zero