File size: 2,163 Bytes
8e844df 8b893c4 8e844df 941ac43 11bd726 e10e064 4468aa8 e400c34 eba6fc3 ea86cca eba6fc3 8cacd64 eba6fc3 4efc936 37259df 2f6133f 8b893c4 1ba86d2 8b893c4 093c97f 8b893c4 dda69c9 5c68510 54dfa59 5c68510 54dfa59 5c68510 8ea4a62 8b893c4 e74e4bd 6515087 b96db4d 33ee252 b96db4d 33ee252 d993188 54dfa59 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 |
import streamlit as st
import pandas as pd
#for k, v in st.session_state.items():
# st.session_state[k] = v
#st.title("📘Map internal description to SBS codes V2.0")
st.subheader("Select specific Chapter for quicker results")
df_chapters = pd.read_csv("SBS_V2_0/Chapter_Index_Rows.csv")
startrowindex_list = df_chapters["from_row_index"].tolist()
endrowindex_list = df_chapters["to_row_index"].tolist()
allchapters_rows_list = []
for s, e in zip(startrowindex_list, endrowindex_list):
eachchapter_rows_list = list(range(s,e))
allchapters_rows_list.append(eachchapter_rows_list)
df_chapters['range_of_rows'] = allchapters_rows_list
def dataframe_with_selections(df_chapters: pd.DataFrame, init_value: bool = False) -> pd.DataFrame:
df_with_selections = df_chapters.copy()
df_with_selections.insert(0, "Select", init_value)
# Get dataframe row-selections from user with st.data_editor
edited_df = st.data_editor(
df_with_selections,
hide_index=True,
column_config={"Select": st.column_config.CheckboxColumn(required=True)},
disabled=df_chapters.columns,
)
# Filter the dataframe using the temporary column, then drop the column
selected_rows = edited_df[edited_df.Select]
return selected_rows.drop('Select', axis=1)
if "selected_chapters" not in st.session_state:
st.session_state['selected_chapters'] = []
st.session_state['selected_rows'] = []
selected_chapters_list = st.session_state.selected_chapters
selected_rows_list = st.session_state.selected_rows
selected_chapters = dataframe_with_selections(df_chapters)
st.write("Your selection:")
st.write(selected_chapters)
#selected_rows = dataframe_with_selections(df_chapters)
#st.write("Your selection:")
#st.write(selected_rows)
selected_chapters_list = selected_chapters.iloc[:,0].tolist()
#st.write("SELECTED CHAPTERS: ", selected_chapters_list)
selected_rows_list = selected_chapters.iloc[:,6].tolist()
#st.write("SELECTED ROWS: ", selected_rows_list)
if selected_chapters is not None:
st.session_state.selected_chapters = selected_chapters_list
st.session_state.selected_rows = selected_rows_list |