Не может работать с текущим значением строки

#python #pandas

#python #pandas

Вопрос:

У меня есть следующий код для получения цен из таблицы, которая сформирована календарным способом:

 from datetime import date

month_in_number = {"JAN": 1, "FEV": 2, "MAR": 3, "ABR": 4, "MAIO": 5, "JUN": 6, "JUL": 7, "AGO": 8, "SET": 9,
                    "OUT": 10, "NOV": 11, "DEZ": 12}

tabela_ibov = pd.read_excel("IBOVDIA.xlsx", None, header=1)

for year in tabela_ibov:
    tabela_anual = tabela_ibov[year]
    tabela_anual.rename(columns={"PREGÃO": "Dia"}, inplace=True)
    calendar = tabela_anual.loc[tabela_anual.index <= 30]

    for month in calendar:
        if month != "Dia":
            final = calendar.loc[:, [month, "Dia"]]
            final = final.dropna()
            final["Dia"] = final["Dia"].astype(int)
            data = date(int(year), month_in_number[month], final["Dia"])
            print(final)
 

Однако я не могу получить значение даты. Он отображает эту ошибку:

     raise TypeError(f"cannot convert the series to {converter}")
TypeError: cannot convert the series to <class 'int'>
 

Что я хочу сделать, так это получить текущий год, месяц и день и добавить в таблицу в качестве другого столбца. Мне удалось правильно указать текущий год и месяц, но текущий день я не смог.

Ответ №1:

Удалось сделать это с:

         for dia in em_colunas.loc[:, "Dia"]:
            em_colunas.loc[dia - 1, "Data"] = dt.date(int(ano), mes_em_numero[mes], dia)