在JSON文件中映射熊猫DataFrame值

问题描述

我想在下面放置df并将其列fruitdessert映射到JSON文件中。

#df
fruit       dessert
-------------------
apple       sauce
blueBerry   muffin
cherry      pie

import json
df = df.to_json()

#desired output
{"apple": "sauce","blueBerry": "muffin","cherry": "pie"}

我已导入所需的内容,并将df转换为JSON。接下来我该怎么做才能获得所需的输出

任何帮助将不胜感激!

解决方法

通过zipdict创建字典,然后转换为json

import json

j = json.dumps(dict(zip(df['fruit'],df['dessert'])))
print (j)
{"apple": "sauce","blueberry": "muffin","cherry": "pie"}

或通过DataFrame.set_index创建Series并调用Series.to_json

j = df.set_index('fruit')['dessert'].to_json()
print (j)
{"apple":"sauce","blueberry":"muffin","cherry":"pie"}
,

您可以重新索引并使用.to_dict

df.set_index('fruit').to_dict()['dessert']