将Pandas数据集转换为其值和列值

2024-06-01 08:18:53 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个字典,我想转换成一个有两列(值和列名)的数据帧。你知道吗

mydict = {'government agency': ['FBI', 'CIA','NSA'], 'international organization': ['EU', 'NATO', 'World Bank'], 'company': ['Amazon', 'Google', 'Microsoft']}

mydict=pd.DataFrame(mydict)

我想把表格格式化成这样

enter image description here

而不是熊猫的阅读方式:

enter image description here

我的字典数据结构是否需要更改,或者这是可以在pandas中实现的(即。熊猫.融化)? 你知道吗


Tags: 数据world字典mydictcompanybankeufbi
2条回答

这是一条单行线:

import pandas

mydict = {'government agency': ['FBI', 'CIA','NSA'], 'international organization': ['EU', 'NATO', 'World Bank'], 'company': ['Amazon', 'Google', 'Microsoft']}
df = pandas.DataFrame(data=[(k,v) for k in mydict for v in mydict[k]], columns=["value", "column"])

输出:

                        value      column
0                     company      Amazon
1                     company      Google
2                     company   Microsoft
3           government agency         FBI
4           government agency         CIA
5           government agency         NSA
6  international organization          EU
7  international organization        NATO
8  international organization  World Bank

构建数据帧并使用^{}

pd.DataFrame(mydict).melt(var_name='Column')

                  Column             value
0           government agency         FBI
1           government agency         CIA
2           government agency         NSA
3  international organization          EU
4  international organization        NATO
5  international organization  World Bank
6                     company      Amazon
7                     company      Google
8                     company   Microsoft

相关问题 更多 >