Seite 1 von 1

n letzte Zeichen eines Strings entfernen

Verfasst: Donnerstag 3. Februar 2022, 17:18
von horstel_horst
Von einem String möchte ich die n letzten Zeichen entfernen. n variert dabei je Zeile, anbei ein kleines Beispiel:

Code: Alles auswählen

import pandas as pd
df = pd.DataFrame(np.array([[1, 'foo', 1], [2, 'bar', 0], [3, 'baz', 2]]),
                   columns=['id', 'string', 'length'])
df.length = df.length.astype(int)
df                            
von dem String in der Spalte 'string' möchte ich nun jeweils die letzten Zeichen abschneiden. Die Anzahl der abzuschneidenden Zeichen steht in Spalte 'length'

Wie mache ich das am besten?

Re: n letzte Zeichen eines Strings entfernen

Verfasst: Donnerstag 3. Februar 2022, 18:42
von Sirius3
Seltsames Problem. Ist das wirklich Dein Problem, oder hast Du eigentlich ein ganz anderes? Woher kommen die Daten?

Re: n letzte Zeichen eines Strings entfernen

Verfasst: Freitag 4. Februar 2022, 08:36
von horstel_horst
Ich habe mir jetzt mit einem Loop beholfen. Ich könnte das ursprüngliche Problem vermutlich auch mit einer regex lösen, finde das aber schwer zugänglich

Re: n letzte Zeichen eines Strings entfernen

Verfasst: Freitag 4. Februar 2022, 09:35
von sparrow
Loops und Dataframes klingen grundsätzlich erst einmal nach der falschen Lösung.