将Pandas Dataframe转换为字典

时间:2018-09-18 13:05:49

标签: python pandas dictionary

过去一个小时我一直在尝试这种方法,但是收效甚微或没有成功

我想知道如何将该数据框制作成字典

DF

 Country      Continent 
 1            Europe
 2            Europe
 3            Asia
 4            Australia

所需

  {'1': 'Europe',
  '2': 'Europe',
  '3': 'Asia',
  '5': 'Australia'}

我厌倦了x10类似于此的不同代码变体,但没有用

 df.set_index('Country', inplace=True)
 df = df.to_dict('dict')

2 个答案:

答案 0 :(得分:7)

您可以为Continent选择列Series,然后使用Series.to_dict

>>> d = df.set_index('Country')['Continent'].to_dict()
>>> print(d)
{'Paris': 'Europe', 'Berlin': 'Europe', 'Macow': 'Asia', 'Melbourne': 'Australia'}

答案 1 :(得分:4)

您可以将dict构造函数与zip一起使用

dict(zip(df.Country, df.Continent))

{1: 'Europe', 2: 'Europe', 3: 'Asia', 4: 'Australia'}