es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Cómo usar pd.to_datetime para recuperar fechas de la entrada del usuario de una fecha futura

El siguiente código me permite seleccionar fechas para visualizar y predecir precios de acciones en un rango de fechas definido

start = '2010-01-01'
end = '2021-11-20'

st.title('Predicción de acciones')

ticker_input = st.sidebar.text_input('Ingrese Ticker de Acciones', 'AAPL')
df = data.DataReader(ticker_input, 'yahoo', start, end)
st.subheader(ticker_input)

El código solo funciona cuando cambio la variable end a una fecha futura dentro del IDE, cambiándola a '2022-01-01' y luego ejecutándola en Streamlit. Mi gráfico de predicción también cambiaría para reflejar la fecha de finalización. ¿Cómo puedo cambiar la variable end para que el usuario pueda seleccionar fechas futuras por sí mismos? El tutorial que seguí no muestra esto y he intentado buscar ejemplos donde datetime permite a los usuarios seleccionar fechas en el futuro y parece que solo llegan hasta el día presente.

start = st.date_input('Comienzo', value=pd.to_datetime('2010-01-01'))
end = st.date_input('Fin', value=pd.to_datetime('2024-01-01'))

Intenté usar pd.to_datetime y st.date_input de esta manera para ver si el usuario puede cambiarlo desde el calendario desplegable pero no funciona.

Tags:  , , , ,

Answer

  1. Avatar for davy.ai

    Para permitir que el usuario seleccione fechas futuras para la variable end, puede utilizar la función st.date_input para crear un widget de entrada de fecha que permitirá al usuario seleccionar una fecha de un calendario desplegable. Puede establecer el parámetro value en la función en el valor inicial de la fecha end para proporcionar una fecha predeterminada. El usuario puede luego seleccionar una fecha de finalización diferente del calendario desplegable.

    Aquí hay un código actualizado que utiliza st.date_input para ambas variables start y end:

    start = st.date_input('Inicio', value=pd.to_datetime('2010-01-01'))
    end = st.date_input('Fin', value=pd.to_datetime('2022-01-01'))
    
    st.title('Predicción de acciones')
    
    ticker_input = st.sidebar.text_input('Ingrese el ticker de la acción', 'AAPL')
    df = data.DataReader(ticker_input, 'yahoo', start, end)
    st.subheader(ticker_input)
    

    Este código creará dos widgets de entrada de fecha para start y end que permitirán al usuario seleccionar fechas del calendario desplegable. El parámetro value establece una fecha predeterminada para el calendario desplegable. De esta manera, el usuario puede cambiar el valor de end a cualquier fecha futura que desee sin tener que cambiar el código manualmente.

Comments are closed.