Python 如何将DF转换为字典
这是mycode:Python 如何将DF转换为字典,python,pandas,Python,Pandas,这是mycode: import pandas as pd import xlrd p=pd.read_excel("D:\contacts.xlsx") pp=p.set_index('Col-A').T print(pp) dic=pp.to_dict() print(dic) 我的DF: Col-A Col-B 0 1 10 1 2 20 2 3 30 3 4 40 4 5 50 5
import pandas as pd
import xlrd
p=pd.read_excel("D:\contacts.xlsx")
pp=p.set_index('Col-A').T
print(pp)
dic=pp.to_dict()
print(dic)
我的DF:
Col-A Col-B
0 1 10
1 2 20
2 3 30
3 4 40
4 5 50
5 6 60
6 7 70
7 8 80
8 9 90
9 10 100
预期产出:
{1:10,2:20,3:30,4:40,5:50}
我的输出如下所示:
Col-A 1 2 3 4 5
Col-B 10 20 30 40 50
{1: {'Col-B': 10}, 2: {'Col-B': 20}, 3: {'Col-B': 30}, 4: {'Col-B': 40}, 5: {'Col-B': 50}}
如何实现预期输出?首先
设置索引
,然后执行命令
并调用Col-B
df.set_index('Col-A').to_dict()['Col-B']
# {1: 10, 2: 20, 3: 30, 4: 40, 5: 50, 6: 60, 7: 70, 8: 80, 9: 90, 10: 100}
首先
设置索引
,然后执行命令
并调用Col-B
df.set_index('Col-A').to_dict()['Col-B']
# {1: 10, 2: 20, 3: 30, 4: 40, 5: 50, 6: 60, 7: 70, 8: 80, 9: 90, 10: 100}
to_dict方法接收一个参数“orient”,默认值为dict 您可以将此输出设置转换为“列表” 您可以在此之后进行迭代,将列表平坦化为单个值
to_dict方法接收一个参数“orient”,默认值为dict 您可以将此输出设置转换为“列表” 您可以在此之后进行迭代,将列表平坦化为单个值
这是否回答了您的问题?这回答了你的问题吗?