python pandas数据帧列转换为dict key和valu

2024-04-28 10:29:28 发布

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

我有一个包含多列的pandas数据框,我想从两列构造一个dict:一列作为dict的键,另一列作为dict的值。我该怎么做?

数据帧:

           area  count
co tp
DE Lake      10      7
Forest       20      5
FR Lake      30      2
Forest       40      3

我需要定义区域为键,在dict中作为值。提前谢谢。


Tags: 数据区域pandas定义countdeareafr
3条回答

对于熊猫来说,可以这样做:

如果lakes是您的数据帧:

area_dict = lakes.to_dict('records')

如果lakes是您的DataFrame,您可以执行如下操作

area_dict = dict(zip(lakes.area, lakes.count))

如果你想和熊猫玩耍,你也可以这样做。不过,我喜欢蓬查根的方式。

# replicating your dataframe
lake = pd.DataFrame({'co tp': ['DE Lake', 'Forest', 'FR Lake', 'Forest'], 
                 'area': [10, 20, 30, 40], 
                 'count': [7, 5, 2, 3]})
lake.set_index('co tp', inplace=True)

# to get key value using pandas
area_dict = lake.set_index('area').T.to_dict('records')[0]
print(area_dict)

output: {10: 7, 20: 5, 30: 2, 40: 3}

相关问题 更多 >