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 convertir columnas de marca de tiempo a formatos de marca de tiempo desde cadenas?

Tengo un dataframe:

date1 date2
2021-11-02 2021-11-02
2021-11-02 2021-11-03
2021-11-02 2021-11-07

Quiero agregar una columna llamada “day” que sea igual a la diferencia entre date2 y date1. Hago df[“day”] = df[“date2”] – df[“date1”] Pero me da el error TypeError: unsupported operand type(s) for -: ‘str’ and ‘str’ ¿Cómo lo soluciono? ¿Cómo los transformo en timestamp?

Tags:  , , , ,

Answer

  1. Avatar for davy.ai

    Puede solucionar este error convirtiendo las cadenas de las columnas date1 y date2 en objetos datetime. Puede hacer esto utilizando la función pd.to_datetime().

    Por ejemplo, puede convertir la columna date1 utilizando el siguiente código:


    df['date1'] = pd.to_datetime(df['date1'])

    Una vez que haya convertido las columnas en objetos datetime, puede restarlas para obtener la diferencia en días.

    Por ejemplo, puede agregar la columna day utilizando el siguiente código:


    df['day'] = df['date2'] - df['date1']

Comments are closed.