Reputation: 229
I am new to streamlit. I tried to set a default value for sidebar.selectbox. The code is below. I appreciate the help! Thank you in advance.
st.sidebar.header('Settings')
fichier = st.sidebar.selectbox('Dataset', ('djia', 'msci', 'nyse_n', 'nyse_o', 'sp500', 'tse'))
window_ANTICOR = st.sidebar.selectbox('Window ANTICOR', ['<select>',3, 5, 10, 15, 20, 30])
if window_ANTICOR == '<select>':
window_ANTICOR == 30
window_OLMAR = st.sidebar.selectbox('Window OLMAR', ['<select>',3, 5, 10, 15, 20, 30])
if window_OLMAR == '<select>':
window_OLMAR == 5
eps_OLMAR = st.sidebar.selectbox('Eps OLMAR', ['<select>', 3, 5, 10, 15, 20, 30])
if eps_OLMAR == '<select>':
eps_OLMAR == 10
eps_PAMR = st.sidebar.selectbox('Eps PAMR', ['<select>',0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1])
if eps_PAMR == '<select>':
eps_PAMR == 0.5
variant = st.sidebar.selectbox('Variant PAMR', (0, 1, 2))
if variant == '<select>':
eps_PAMR == 0
Upvotes: 17
Views: 40353
Reputation: 19
values = ['Select', 10, 15, 20, 25, 30]
default_ix = values.index(10)
if values == 'Select':
st.warning("Choose the integers from the list in the dropdown")
else:
components = st.selectbox("Select the components below⤵️", values,
index=default_ix)
Upvotes: 1
Reputation: 19
you can directly give index also for default position
bins = st.sidebar.radio(label="Category :", options=n3, index=0) for more information enter link description here
Upvotes: 2
Reputation: 723
Use the index
keyword of the selectbox
widget. Pass the index of the value in the options
list that you want to be the default choice.
E.g. if you wanted to set the default choice of the selectbox labeled 'Window ANTICOR'
to 30 (which you appear to be trying to do), you could simply do this:
values = ['<select>',3, 5, 10, 15, 20, 30]
default_ix = values.index(30)
window_ANTICOR = st.sidebar.selectbox('Window ANTICOR', values, index=default_ix)
Source: https://docs.streamlit.io/library/api-reference/widgets/st.selectbox
Upvotes: 25