Split Pandas-Serie in DataFrame mit Trennzeichen
Ich versuche zu Spalten pandas
series
Objekt durch ein bestimmtes Trennzeichen "; "
in diesem Fall. Ich möchte die schalten Sie es in einen dataframe
es wird immer die gleiche Menge an "Spalten" oder um genauer zu sein, die gleiche Menge an "; "
angibt, Spalten. Ich dachte, dies würde den trick tun, aber es nicht python, wie die Konvertierung eines pandas-Serie in ein pandas DataFrame? ich will nicht zu Durchlaufen, ich bin mir sicher, dass pandas
hat eine Verknüpfung, das ist effektiver.
Kennt jemand die effizienteste Methode zum teilen dieser Serie in ein dataframe von "; "
?
#Example Data
SR_test = pd.Series(["a; b; c; d; e","aa; bb; cc; dd; ee","a1; b2; c3; d4; e5"])
# print(SR_test)
# 0 a; b; c; d; e
# 1 aa; bb; cc; dd; ee
# 2 a1; b2; c3; d4; e5
#Convert each row one at a time (not efficient)
tmp = []
for element in SR_test:
tmp.append([e.strip() for e in element.split("; ")])
DF_split = pd.DataFrame(tmp)
# print(DF_split)
# 0 1 2 3 4
# 0 a b c d e
# 1 aa bb cc dd ee
# 2 a1 b2 c3 d4 e5
EdChum und Jezrael, die zunächst beantwortet? Ich will fair sein. Dies sind die Super Antworten, genau das, was ich für ging.
Ich glaube, ich war der erste, aber der Unterschied war nur über
Ich glaube, ich war der erste, aber der Unterschied war nur über
15 seconds
. Also ich weiß nicht, ob es wichtig ist. @EdChum, was denkst du?InformationsquelleAutor O.rka | 2016-05-14
Du musst angemeldet sein, um einen Kommentar abzugeben.
Können Sie
str.split
:Andere schnellere Lösung, wenn
Series
haben keineNaN
Werte:Timings:
Ja, wenn, Wenn dieser Weg verwendet. str.split ist ein bisschen langsamer, weil es funktioniert mit NaN-Werten sehr nett.
InformationsquelleAutor jezrael
Verwenden Sie die vektorisierte
str.split
mit paramexpand=True
und gehen, wie die Daten, die arg in dieDataFrame
ctor:InformationsquelleAutor EdChum