gpt4 book ai didi

Python pandas 数据帧输出格式

转载 作者:行者123 更新时间:2023-11-28 16:56:26 25 4
gpt4 key购买 nike

我需要以特定格式保存数据框,但我不知道如何更改该格式(或者可以那样更改)。

我有json:

{
'criteria A': {
'topicA': [6, 2, 7],
'topicB': [0, 6, 9]
},
'criteria B': {
'topicA': [6, 4, 8],
'topicB': [8, 6, 1]
}
}

我试过保存我的框架:

df = pd.DataFrame(json)
df.to_csv('test.csv')

但是它将数组保存为单元格值:

------------------------------------
| | criteria A | criteria B |
------------------------------------
| topicA | [3, 8, 9] | [6, 1, 0] |
------------------------------------
| topicB | [5, 4, 9] | [2, 9, 9] |
------------------------------------

我唯一想改变的是array 输出并合并criteria* 单元格以获得如下内容:

------------------------------------
| | criteria A | criteria B |
------------------------------------
| topicA | 3 | 8 | 9 | 6 | 1 | 0 |
------------------------------------
| topicB | 5 | 4 | 9 | 2 | 9 | 9 |
------------------------------------

所以标准是 3 行宽,每个数组值都放在自己的单元格中。

pandas 是否允许这种格式?

最佳答案

考虑来自 json 的数据框,如下所示:

       criteria A criteria B
topicA [6, 2, 7] [6, 4, 8]
topicB [0, 6, 9] [8, 6, 1]

你可以像下面这样创建一个多索引:

(pd.concat([pd.DataFrame(df[i].tolist()) for i in df.columns],axis=1,keys=df.columns)
.set_index(df.index))

输出:

            criteria A       criteria B      
0 1 2 0 1 2
topicA 6 2 7 6 4 8
topicB 0 6 9 8 6 1

Excel View : enter image description here

关于Python pandas 数据帧输出格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57892106/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com