Array in Pandas DataFrame
Verfasst: Samstag 11. September 2021, 10:32
hallo zusammen,
ich bin neu in diesem Forum und auch ein Python Novize. Ich versuche derzeit mit kleineren Projekten in diese Sprache hineinzufinden.
Zu mir: ich bewege mich beruflich primär im objektorientierten Bereich.
Bei folgendem Problem bin ich nun ein wenig ratlos, denn das was man "objektorientiert" erwarten würde, scheint auf den ersten Blick nicht zu klappen.
Ich habe ein Array (Liste), welches in einem Dataframe steckt. Und ich möchte nun eine Spalte einfügen, in der steht, wieviele Objekte in der Liste sind.
Leider liefert "len(df["SkillArray"]) nicht die länge des Inhaltes in df["SkillArray"] sondern die Länge des Dataframes.
Ich habe auch df["SkillArray"].size ausprobiert. Aber auch hier erhalt ich jeweils nur die Länge des Dataframes.
Ich freue mich über alle Hinweise, die mir hier weiterhelfen!
Ggf. steht mir hier die "Objektorientierte Denke" im Weg... Oder ich habe ggf. was ganz Grundlegendes an den Dataframes nicht verstanden.
Ich habe auch gegooglet und auch hier im Forum geschaut, ob es ggf. irgendwo ein ähnliches Problem gibt, aber leider nichts gefunden.
Evtl. würde mir auch helfen, wenn ihr mir ein Stichwort sagt, was mir hier weiterhilft.
(Natürlich könnte man ggf. über das df iterieren und das einzeln Zeile für Zeile ausrechnen. Aber das erscheint mir bei dem was die Dataframes leisten können, irgendwie falsch)
Dankeschön!
ich bin neu in diesem Forum und auch ein Python Novize. Ich versuche derzeit mit kleineren Projekten in diese Sprache hineinzufinden.
Zu mir: ich bewege mich beruflich primär im objektorientierten Bereich.
Bei folgendem Problem bin ich nun ein wenig ratlos, denn das was man "objektorientiert" erwarten würde, scheint auf den ersten Blick nicht zu klappen.
Ich habe ein Array (Liste), welches in einem Dataframe steckt. Und ich möchte nun eine Spalte einfügen, in der steht, wieviele Objekte in der Liste sind.
Code: Alles auswählen
import pandas as pd
data = [['Ada', 30, 'a, b, c, d, e'],['Bob', 32, 'a, b, c'], ['Clarke', 33, 'a, c'], ['Dylan', 33, 'a, c']]
df = pd.DataFrame(data, columns=['Name', 'Age', 'Skills'])
print(df)
df["SkillArray"] = df["Skills"].str.split(",")
df['SkillCount'] = len(df['SkillArray'])
print(df)
Ich habe auch df["SkillArray"].size ausprobiert. Aber auch hier erhalt ich jeweils nur die Länge des Dataframes.
Ich freue mich über alle Hinweise, die mir hier weiterhelfen!
Ggf. steht mir hier die "Objektorientierte Denke" im Weg... Oder ich habe ggf. was ganz Grundlegendes an den Dataframes nicht verstanden.
Ich habe auch gegooglet und auch hier im Forum geschaut, ob es ggf. irgendwo ein ähnliches Problem gibt, aber leider nichts gefunden.
Evtl. würde mir auch helfen, wenn ihr mir ein Stichwort sagt, was mir hier weiterhilft.
(Natürlich könnte man ggf. über das df iterieren und das einzeln Zeile für Zeile ausrechnen. Aber das erscheint mir bei dem was die Dataframes leisten können, irgendwie falsch)
Dankeschön!