Set default value for selectbox

Viewed 12968

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
2 Answers

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

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

Related