python - Pandas 数据框到 JSON 的字典

标签 python json pandas

正如问题所问,我有一本我想保存的 pandas 的 dataframes 字典,这样下次我启动 ipython 时就不必重新采样数据了> 笔记本。我尝试了一些以前在其他情况下有效的简单方法:

import json
with open('result.json', 'w') as fp:
    json.dump(d, fp)

但是我得到了这个错误:

[1001 rows x 6 columns] is not JSON serializable

我认为这与我的 pandas dataframe 有关,但我们将不胜感激。

最佳答案

您需要扩展 JSON 编码器,以便它知道如何序列化数据帧。 示例(使用 to_json 方法):

import json
class JSONEncoder(json.JSONEncoder):
    def default(self, obj):
        if hasattr(obj, 'to_json'):
            return obj.to_json(orient='records')
        return json.JSONEncoder.default(self, obj)

保存:

with open('result.json', 'w') as fp:
    json.dump({'1':df,'2':df}, fp, cls=JSONEncoder)

如果你愿意的话

json.load(open('result.json')

您将获得一本包含您的数据框的字典。您可以使用

加载它们
pd.read_json(json.load(open('result.json'))['1'])

关于python - Pandas 数据框到 JSON 的字典,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33061302/

相关文章:

php - 访问 json 对象和数组

node.js - flutter 如何在http.get请求中传递变量

python - Matplotlib 失败并出现 ValueError : cannot convert float NaN to integer

页面上的 Python 抓取仍然包含像\r\n\t 这样的字符

python - 如何创建一个Python字典(键: value) from select objects in a JSON file with multiple JSON lines

javascript - 我如何检查 json 响应是否具有带有 switch case 的自己的属性?

pandas - 如何生成 pandas 数据框行以触发数据框

python - 如何通过快速解决方案创建这样的数据框?

python - 如何将文本拆分为句子?

python - 如何计算条件列中值的频率?