Как правильно ссылаться на столбцы с кириллическими названиями в функции python
Написал следующий код и он работает корректно, но почему-то только после того, как я переименовал заголовки столбцов в латиницу. Подскажите как правильно ссылаться на заголовки написанные на кириллице, чтобы в функции можно было ссылаться на кириллические названия заголовков, например на Дата начала, вместо start_date
#загружаем библиотеки
import pandas as pd
import datetime
#адрес папки
pp_path='C:/Users/Макс/Desktop/ПП.xlsx'
# загружаем данные
pp_excel_data = pd.read_excel(pp_path)
# переименовываем заголовки
pp_excel_data.rename(columns={"Дата начала": "start_date","Дата окончания": "end_date","ДатаКалендарь": "date",}, inplace=True)
#функция
def check_range(start_date, end_date, date):
if start_date <= date <= end_date:
return True
else:
return False
#создание нового столбца
pp_excel_data["is_in_range"] = pp_excel_data.apply(lambda row: check_range(row["start_date"], row["end_date"], row["date"]), axis=1)
display(pp_excel_data)
Вот итоговый корректно работающий вариант кода, который был предложен в ответе :
#загружаем библиотеки
import pandas as pd
import numpy as np
import datetime
#адрес папки
pp_path='C:/Users/Макс/Desktop/ПП.xlsx'
# загружаем данные по бюджету проектов
pp_excel_data = pd.read_excel(pp_path)
#функция
def check_range(x):
return x["Дата начала"]<= x["ДатаКалендарь"]<= x["Дата окончания"]
#создание нового столбца
pp_excel_data["is_in_range"] = pp_excel_data.apply(check_range, axis=1)
display(pp_excel_data)
Источник: Stack Overflow на русском