Problem Einstellungverketten alle möglichen Spaltenwerte anderer einzigartiger Spalte
Angenommen, bin ich den folgenden Datenrahmen gegeben.
ID category
223 MMO
223 Game
444 Finance
360 Reading
360 Book
Dieser Datenrahmen hat eine ID
Spalte und es ist category
verbunden. Beachten Sie, dass dieselbe ID
mehrere Kategorien haben kann.
Mein Ziel ist es, eine neue Spalte zu erstellen, die die Verkettung aller möglichen Kategorien für eine gegebene ID
enthält. Das bedeutet:
- die alte
category
Spalte - Entfernen Entfernen von doppelten
ID
Reihen
Die Ausgabe würde wie folgt aussehen.
ID category
223 MMO_Game
444 Finance
360 Reading_Book
Versuchte Lösung
Mein obwohl Prozess war zunächst eine groupby Variable zu erstellen, die Gruppe würde category
von ID
.
groupby_ID = df['category'].groupby(df['ID'])
Jetzt kann ich versuchen und durchlaufen die gruppierten Daten und verketten die Zeichenfolgen.
for ID, category in groupby_appID:
Ich weiß nicht, wie ich an dieser Stelle weitermachen soll. Einige Hinweise würden sehr geschätzt werden!
Genius @EdChum! Ich denke, ich habe das Problem übertrieben, keine Notwendigkeit für Schleifen. –
Es ist nicht sofort offensichtlich, dass Sie dies tun können, es ist verlockend, mit 'lambda's oder irgendeiner Art von eingebauter Methode zu beginnen, aber es ist eine schöne kompakte Möglichkeit, das zu erreichen, was Sie wollen – EdChum
Ich sah @EdChum hatte geantwortet und ich wollte nicht seine Antwort, um meine zu beeinflussen. Also schaute ich nicht hin. Ich habe funktionell die gleiche Lösung gefunden, aber das ist eleganter. 'df.groupby ('ID'). category.apply (Lambda x: '_'. join (x))'. Große Antwort @EdChum. – piRSquared