Ich habe eine Pandas-Serie, die eine Index-Spalte und eine zweite Spalte, 0 enthält.Wie wird der Wert von zwei Zeilen innerhalb einer Serie zusammengeführt/kombiniert, wenn die Werte der beiden Zeilen unterschiedlich sind?
Die Index-Spalte enthält mehrere Abkürzungen für Sprachen. Zwei verschiedene Werte in dieser Indexspalte sind "en" für "Englisch" und "en-gb" für "Britisches Englisch". Es gibt zahlreiche andere Werte in dieser Spalte mit „es“ für „Spanisch,‚fr‘für‚Französisch‘, und so weiter
So ist die Serie sieht ungefähr so aus:.
Index 0
en 42000
en-gb 500
es 320
und 143
fr 50
Die Säule,
Ich versuche, zwei Werte für "en" und "en-gb" zu kombinieren. so dass sie als eins gezählt werden
Und ich möchte eine neue Serie, die wie folgt aussieht:
Index 0
en 42500
es 320
und 143
fr 50
EDIT: Vorschläge sagen mir die Original-Datenrahmen zu ändern. Das Problem mit diesem Vorschlag ist, dass ich keinen traditionellen Datenrahmen als Quelle meiner Pandas-Serie habe.
Stattdessen ist der Ursprung meiner Pandas-Serie eine Liste von Wörterbüchern, und in diesen Wörterbüchern ist einer der Schlüssel ein anderes Wörterbuch.
Also um klar zu sein habe ich: Eine Liste von Tausenden von Wörterbüchern.
Einer der Schlüssel für jedes Wörterbuch ist "Benutzer".
Der Wert für die Taste "user" ist ein weiteres Wörterbuch.
In diesem zweiten Wörterbuch gibt es einen Schlüssel "lang" und Werte wie "en", "en-gb", "es", "fr" und so weiter.
So visuell, ich denke, eine Probe meiner ursprünglichen Daten wie folgt aussieht:
list_of_things = [
{'id':4444, 'user': {'lang':'en', 'gibberish':'*#(#($&'}, 'location':'USA'},
{'id':555, 'user': {'lang':'fr', 'gibberish':'*#(#($&'}, 'location':'France'},
{'id':666, 'user': {'lang':'en-gb', 'gibberish':'*#(#($&'}, 'location':'Great Britain'},
{'id':777, 'user': {'lang':'en', 'gibberish':'*#(#($&'}, 'location':'USA'},
{'id':888, 'user': {'lang':'en', 'gibberish':'*#(#($&'}, 'location':'USA'}, {'id':999, 'user': {'lang':'en', 'gibberish':'*#(#($&'}, 'location':'USA'},
{'id':888, 'user': {'lang':'en', 'gibberish':'*#(#($&'}, 'location':'USA'}, {'id':999, 'user': {'lang':'en', 'gibberish':'*#(#($&'}, 'location':'USA'},
{'id':888, 'user': {'lang':'en', 'gibberish':'*#(#($&'}, 'location':'USA'}, {'id':999, 'user': {'lang':'es', 'gibberish':'*#(#($&'}, 'location':'Spain'},
{'id':888, 'user': {'lang':'en-gb', 'gibberish':'*#(#($&'}, 'location':'Great Britain'}, {'id':999, 'user': {'lang':'und', 'gibberish':'*#(#($&'}, 'location':'Unknown'},
]
Sie möchten zwei 'es' getrennt halten? – Wen
Ah, tut mir leid, das ist ein Fehler, den ich bei der Erstellung meiner Tabelle gemacht habe - ich habe nur eine Instanz von es. – TJE