Ich versuche, eine saubere Möglichkeit zu finden, eine neue Spalte in einem Datenrahmen mit der Rangliste der Gruppe /Untergruppe basierend auf der Summe eines Wertes zu erstellen.
Hier ist ein einfaches Beispiel: < /p>
df = pd.DataFrame({
"group": ["a", "a", "a", "a", "a", "b", "b", "b", "b", "b","c"],
"subgroup": ["i","ii","i","ii","i","ii","i","ii","i","ii","ii"],
"value": [2, 4, 2, 3, 5, 1, 2, 4, 1, 5, 11] })
< /code>
Die Ausgabe, die ich gerne hätte, ist: < /p>
|group |subgroup| value | rank |
|------|--------|-------|------|
| "a" | "i" | 2 | 3 |
| "a" | "ii" | 4 | 4 |
| "a" | "i" | 2 | 3 |
| "a" | "ii" | 3 | 4 |
| "a" | "i" | 5 | 3 |
| "b" | "ii" | 1 | 2 |
| "b" | "i" | 2 | 5 |
| "b" | "ii" | 4 | 2 |
| "b" | "i" | 1 | 5 |
| "b" | "ii" | 5 | 2 |
| "c" | "i" | 11 | 1 |
< /code>
Weil die Summe des Wertes der Untergruppe ["a", "i"] 9 ist, was es zur drittgrößten Untergruppe macht.>
Mit der Rangliste der Gruppe/Untergruppe in einer neuen Spalte eines Datenrahmens ⇐ Python
-
- Similar Topics
- Replies
- Views
- Last post