Haben Sie eine Pandas-Spalte mit Listen, wie Sie eindeutige Listenelemente in Spalten verschieben können?
Ich habe einen Web-Scraper geschrieben, um Informationen aus einer Produkttabelle abzurufen und einen Datenrahmen zu erstellen. Die Datentabelle enthält eine Spalte Beschreibung, die eine durch Kommas getrennte Zeichenfolge von Attributen enthält, die das Produkt beschreiben. Ich möchte für jedes eindeutige Attribut eine Spalte im Datenrahmen erstellen und die Zeile in dieser Spalte mit der Teilzeichenfolge des Attributs füllen. Beispiel df unten.
PRODUCTS DATE DESCRIPTION
Product A 2016-9-12 Steel, Red, High Hardness
Product B 2016-9-11 Blue, Lightweight, Steel
Product C 2016-9-12 Red
Ich glaube, der erste Schritt besteht darin, die Beschreibung in eine Liste aufzuteilen.
In: df2 = df['DESCRIPTION'].str.split(',')
Out:
DESCRIPTION
['Steel', 'Red', 'High Hardness']
['Blue', 'Lightweight', 'Steel']
['Red']
Meine gewünschte Ausgabe sieht wie in der folgenden Tabelle aus. Die Spaltennamen sind nicht besonders wichtig.
PRODUCTS DATE STEEL_COL RED_COL HIGH HARDNESS_COL BLUE COL LIGHTWEIGHT_COL
Product A 2016-9-12 Steel Red High Hardness
Product B 2016-9-11 Steel Blue Lightweight
Product C 2016-9-12 Red
Ich glaube, die Spalten können mit einem Pivot eingerichtet werden, aber ich bin mir nicht sicher, wie die Spalten nach dem Einrichten am pythonischsten gefüllt werden sollen. Jede Hilfe wird gebeten.
AKTUALISIEREVielen Dank für die Antworten. Ich habe die Antwort von @ MaxU als korrekt ausgewählt, da sie etwas flexibler zu sein scheint, aber bei @ piRSquared ist das Ergebnis sehr ähnlich und es kann sogar als pythonischerer Ansatz angesehen werden. Ich habe beide Versionen getestet und beide tun, was ich brauchte. Vielen Dank