繁体   English   中英

使用 dcc.Store() 时,TypeError: Object of type DataFrame is not JSON serializable

[英]when using dcc.Store(), TypeError: Object of type DataFrame is not JSON serializable

我正在使用 dcc.Store() 在回调之间共享 dataframe 数据。 我得到了 TypeError 的错误:Object 类型 DataFrame 不是 JSON 可序列化。 谢谢你的帮助。


@app.callback(
    [
    Output("well-table", "data"),
    ],
    [
    Input('load-area-data','n_clicks'),
    ],
    [
     State("select-area-dropdown", "value"),
     State('read-existing-data-radio','value'),
    ],
    
    prevent_initial_call=True,   # disable output in the first load
)
def change_area_data(n_clicks,area,read_existing_radio): 

...
    s=json.dumps(df_timedata)
    return (datatable_thisarea,
            s, 
           )
TypeError: Object of type DataFrame is not JSON serializable

这通常是由于收集/传递/返回原始 dataframe 而不是可以序列化的 JSON 兼容版本。 您没有针对此问题提供深入的错误日志,但我高度怀疑您将df_timedata错误地返回到 dash 数据表。

在任何情况下,请确保使用pandas.DataFrame.to_dict()之类的东西转换 dataframe ,它可以被序列化,然后将其存储在dcc.Store中。 您可以使用pandas.DataFrame.from_dict()重新转换回 dataframe

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM