在数据框中添加复选框

Ale*_*nto 3 python checkbox interactive pandas streamlit

我想在 Streamlit 的数据框中添加一列,并且该列是一个复选框,以便稍后我可以列出标记复选框的行,这可能吗?

fer*_*rdy 7

您可以使用streamlit-aggrid 包。

代码
"""
pip install streamlit-aggrid
"""

import streamlit as st
import pandas as pd
from st_aggrid import AgGrid, GridUpdateMode
from st_aggrid.grid_options_builder import GridOptionsBuilder


data = {
    'country': ['Japan', 'China', 'Thailand', 'France', 'Belgium', 'South Korea'],
    'capital': ['Tokyo', 'Beijing', 'Bangkok', 'Paris', 'Brussels', 'Seoul']
}

df = pd.DataFrame(data)
gd = GridOptionsBuilder.from_dataframe(df)
gd.configure_selection(selection_mode='multiple', use_checkbox=True)
gridoptions = gd.build()

grid_table = AgGrid(df, height=250, gridOptions=gridoptions,
                    update_mode=GridUpdateMode.SELECTION_CHANGED)

st.write('## Selected')
selected_row = grid_table["selected_rows"]
st.dataframe(selected_row)
Run Code Online (Sandbox Code Playgroud)
输出

在此输入图像描述