Вы можете использовать DateOffset
для достижения этого:
In [15]:
df['NEW_DATE'] = df['ACC_DATE'].apply(lambda x: x - pd.DateOffset(years=1))
df
Out[15]:
ACC_DATE NEW_DATE
index
538 2006-04-07 2005-04-07
550 2006-04-12 2005-04-12
update
Глядя на этот вопрос через 3 года, используя apply
, вы можете просто сделать:
In[88]:
df['NEW_DATE'] = df['ACC_DATE'] - pd.DateOffset(years=1)
df
Out[88]:
ACC_DATE NEW_DATE
index
538 2006-04-07 2005-04-07
550 2006-04-12 2005-04-12
, который является векторизованной операцией
Создайте метод обратной передачи Ajax, который пишет файл CSV в Ваш веб-сервер и возвращает URL.. Установите скрытый IFrame в браузере к местоположению файла CSV на сервере.
Вашему пользователю тогда подарят ссылку на загрузку CSV.
Я рекомендую Вам генерировать открытый XML формата файл Excel, намного более гибко, чем CSV.
Read , Генерирующий файл Excel в ASP.NET для большего количества информации