Python Pandas DataFrame在嵌套的JSON中组合某些列
假设您有一个如下所示的熊猫数据帧:Python Pandas DataFrame在嵌套的JSON中组合某些列,python,json,pandas,Python,Json,Pandas,假设您有一个如下所示的熊猫数据帧: A1a A1b A2a A2b … B1a … 0.25 0.75 0.10 0.5 1 … … … … … [ { A: { 1: { a: 0.25, b: 0.75 }, 2: {
A1a A1b A2a A2b … B1a …
0.25 0.75 0.10 0.5 1
… … … … …
[
{
A: {
1: {
a: 0.25,
b: 0.75
},
2: {
a: 0.1,
b: 0.5,
...
},
...
},
B: {
1: {
a: 1
},
...
},
...
},
...
]
您希望输出一个JSON对象列表(每行一个对象),如下所示:
A1a A1b A2a A2b … B1a …
0.25 0.75 0.10 0.5 1
… … … … …
[
{
A: {
1: {
a: 0.25,
b: 0.75
},
2: {
a: 0.1,
b: 0.5,
...
},
...
},
B: {
1: {
a: 1
},
...
},
...
},
...
]
最好的方法是什么
这里显然有很多pandas/nested JSON问题,但我认为这是不同的,因为我试图将特定列嵌套在同一行中,而不是将列中具有相同值的行分组(如中) 既然您链接了该页面,我将借用该链接中已接受答案的函数
#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}}}
这真的很干净,很漂亮!