посчитать разницу между датами в столбцах дата датафрейма pandas
Хочу посчитать разницу между датами в днях между столбцами датафрейма через лямбда функцию, как написала ниже не работает!
import requests
import pandas as pd
import datetime
data = pd.read_excel('firstdep.xlsx')
data = pd.DataFrame(data)
data['date_firs_dep'] = pd.to_datetime(data['date_firs_dep'])
data = data[data['date_firs_dep'] < datetime.date(2020, 2, 1)]
data['day_space'] = data.apply(lambda x: (x['date_firs_dep']-x['Последняя активность']).days)'''
Ответы (1 шт):
Автор решения: CrazyElf
→ Ссылка
По идее там apply вообще не нужен, должно и как-то так сработать, попробуйте:
data['day_space'] = (data['date_firs_dep']-data['Последняя активность']).dt.days
В общем случае почти всё в Pandas можно и нужно делать векторным способом - то есть операциями сразу над целыми столбцами (иногда и строками, но обычно это столбцы). Это и понятнее выглядит и работает гораздо быстрее, чем перебор строк, apply и всякое такое прочее. В Pandas для векторной работы есть все нужные операции и функции.