背景
因工作需要,从hive数仓里面下载了一份数据,需要计算在优惠券生命周期内用券的用户树。
数据样式如下:
df_coupon = pd.read_excel(r'../coupon.xlsx')
df_coupon.head()
a.user_id a.credit_userid a.partition_date b.coupon_obtain_date
0 16865549 16865549 2019-06-30 2019-06-30
1 16865549 16865549 2019-06-30 2019-06-30
2 23311751 23311751 2019-07-03 2019-07-03
3 24491906 24491906 2019-07-06 2019-07-06
4 24491906 24491906 2019-07-06 2019-07-06
解决思路
1)以str格式储存的两列无法直接相减:
df_coupon['a.partition_date'] - df_coupon['b.coupon_obtain_date']
TypeError: unsupported operand type(s) for -: 'str' and 'str'
所以要把这两列转化为日期格式,这里有多种方法,我用的是pandas自带的to_datetime方法<