Python - TypeError:, _AtIndexer, el objeto no se puede llamar en pandas

CorePress2024-01-24  9

Tengo un objeto DataFrame llamado df y quiero generar una lista de fechas con el formato adecuado. (el módulo de fecha y hora se importó correctamente)

Escribí:

dates = [datetime.date(df.at(index, "year"), df.at(index, "month"), df.at(index, "day")) for index in df.index]

que da el error en el título.

Si te ayuda, este es el valor de df.head():

   year  month  day  smoothed   trend
0  2011      1    1    391.26  389.76
1  2011      1    2    391.29  389.77
2  2011      1    3    391.33  389.78
3  2011      1    4    391.36  389.78
4  2011      1    5    391.39  389.79

(Esto es nuevo para mí, por lo que probablemente haya malinterpretado los documentos)



------------------------------------

df.at no es una propiedad invocable sino que admite la indexación. Así que cambie los paréntesis a corchetes a su alrededor:

df.at[index, "year"]

es decir, ( a [ y similar para cerrar.

0



------------------------------------

Además de usar [ en lugar de (, puedes lograr tu objetivo simplemente

pd.to_datetime(df[['year', 'month', 'day']])

Su guía para un futuro mejor - libreflare
Su guía para un futuro mejor - libreflare