Скажем, у вас есть панда DataFrame, который выглядит так:
A1a A1b A2a A2b … B1a …
0.25 0.75 0.10 0.5 1
… … … … …
И вы хотите вывести список объектов JSON (один объект для каждой строки), который выглядит так:
[
{
A: {
1: {
a: 0.25,
b: 0.75
},
2: {
a: 0.1,
b: 0.5,
...
},
...
},
B: {
1: {
a: 1
},
...
},
...
},
...
]
Какой лучший способ сделать это?
Очевидно, что здесь много вопросов о пандах/вложенных JSON, но я думаю, что это отличается от того, что я пытаюсь вложить определенные столбцы в одну строку, а не группировать строки, которые имеют одинаковые значения в столбцах (например, в этом примере).
Поскольку вы связываете страницу, я recur_dictify
функцию recur_dictify
из принятого ответа в этой ссылке
#make your df columns become multiple index
df.columns=pd.MultiIndex.from_tuples(df.columns.map(list).map(tuple))
A
1 2
a b a b
0 0.25 0.75 0.1 0.5
#Then we apply the function
recur_dictify(df.T.reset_index())
{'A': {'1': {'a': 0.25, 'b': 0.75}, '2': {'a': 0.1, 'b': 0.5}}}