使用破折号下拉列表过滤pd.DataFrame

时间:2020-09-20 20:57:36

标签: python pandas plotly-dash

我是Dash的新手,它尝试使用下拉列表过滤以下数据框并显示过滤器数据框。我无法正确定义回调函数。任何示例代码都非常感谢,

df = pd.DataFrame({
    'col1': ['A', 'B', 'B', 'A', 'B', 'A'],
    'col2': [2, 1, 9, 8, 7, 4],
    'col3': [0, 1, 9, 4, 2, 3],   
})  

1 个答案:

答案 0 :(得分:2)

Here is the page from the docs,我认为这可能是一个不错的起点。如果您提前知道数据框,则可以使用所需的值填充下拉列表。如果不这样做,则需要使用回调来更新下拉IEnumerator bosstextgoaway() { yield return new WaitForSeconds(3f); BossText.text = ""; BossText.GetComponent<Text>().enabled = false; //this is the line with the error } 属性。

该文档页面上的第一个示例显示了如何从下拉列表中获取值并将其输出。就您而言,您可能会使用下拉列表来过滤数据框,例如:

options

然后将回调的输出设置为Dash数据表的@app.callback( Output('data-table-id', 'data'), [Input('dropdown-id', 'value') ) def callback_func(dropdown_value): df_filtered = df[df['col1'].eq(dropdown_value)] return df_filtered.to_dict(orient='records) 属性。我为下拉列表的dataOutput部分添加了一些虚构的值,希望能给出大致的想法。