Dataframe String trennen und addieren
Verfasst: Freitag 15. Juni 2018, 18:54
Hi,
wie kann in einer Spalte des Dataframes einen String an den Leerzeichen teilen und die Blöcke addieren?
Beispiel
row| id | Anzahl
0 | id1 | 012 234 345
1 | id2 | 012 234 345 542
2 | id3 | 123 234
und raus kommen soll
0 | id1 | 3
1 | id2 | 4
2 | id3 | 2
Was ich mir bisher überlegt habe.
Aber das funktioniert wohl nicht so, denn ich bekomme dann immer nur die Länge aller Zeichen in der Spalte 'Anzahl' eingetragen. Also ich bekomme
0 | id1 | 11
1 | id2 | 15
2 | id3 | 7
Ich könnte nun natürlich mit einer Vektoroperation noch den int Wert prüfen und entsprechend auf den gewollten int wert zuweisen, aber es gibt sicherlich von vornherein eine schönere Möglichkeit auf eine Lösung zu kommen.
Kann mir jemand einen anderen Lösungsweg aufzeigen, der sich besser eignet?
wie kann in einer Spalte des Dataframes einen String an den Leerzeichen teilen und die Blöcke addieren?
Beispiel
row| id | Anzahl
0 | id1 | 012 234 345
1 | id2 | 012 234 345 542
2 | id3 | 123 234
und raus kommen soll
0 | id1 | 3
1 | id2 | 4
2 | id3 | 2
Was ich mir bisher überlegt habe.
Code: Alles auswählen
# Trennen am Leerzeichen
df['Anzahl'].str.split()
# Zähle zusammen
df['Anzahl'] = df['Anzahl'].str.len()
0 | id1 | 11
1 | id2 | 15
2 | id3 | 7
Ich könnte nun natürlich mit einer Vektoroperation noch den int Wert prüfen und entsprechend auf den gewollten int wert zuweisen, aber es gibt sicherlich von vornherein eine schönere Möglichkeit auf eine Lösung zu kommen.
Kann mir jemand einen anderen Lösungsweg aufzeigen, der sich besser eignet?