[FIXED] Wie reduziert man jede Zeile auf eine JSON-Spalte?

Ausgabe

Nehmen wir an, wir haben den folgenden df:

| col_a| col_b |
| -----| ----- |
| 1    | a     |
| 2    | b     |

Und wir wollen alle Zeilen auf JSONs reduzieren, die alle Spalten zeilenweise darstellen:

|    json_representation        |
| ------------------------------| 
| {'col_a': 1, 'col_b': 'a'}    | 
| {'col_a': 2, 'col_b': 'b'}    |

Dicts sind auch gut, da sie einfach in JSON-Strings konvertiert werden können.

Ich strebe eine Lösung an, bei der nicht jeder Spaltenname bekannt sein muss, daher sind Antworten hier (bis zu dem Moment, in dem ich frage) nicht die Lösung, nach der ich suche.

Lösung

Hier ist eine Möglichkeit, dies zu tun

Verwenden Sie apply und konvertieren Sie die Zeile mit to_json

df.apply(lambda x: x.to_json( ), axis=1)


0    {"col_a":1,"col_b":"a"}
1    {"col_a":2,"col_b":"b"}
dtype: object
df['json']=df.apply(lambda x: x.to_json( ), axis=1)
df
col_a   col_b   json
0   1   a   {"col_a":1,"col_b":"a"}
1   2   b   {"col_a":2,"col_b":"b"}


Beantwortet von –
Naveed


Antwort geprüft von –
Timothy Miller (FixError Admin)

0 Shares:
Leave a Reply

Your email address will not be published. Required fields are marked *

You May Also Like

[FIXED] String mit Array vergleichen

Ausgabe Ich möchte eine Zeichenfolge (Postleitzahl, zB: “50000”) mit einem Array von Zeichenfolgenelementen vergleichen, und wenn das Array…