2018-11-21 lambda使用集锦

d0 = d0.groupby(['key2'])['data2'].agg(lambda x:max(x)).reset_index()
以key2分组,取data2的最小值

d1['min_date_received'] = d1.interval.apply(lambda s:min([int(d) for d in s.split(':')]))
interval的内容为x:x:x,此处对s拆分,并取出最小值

t2['receive_number'] = t2.date_received.apply(lambda s:len(s.split(':')))
date_received的内容为x:x:x,此处对s拆分,并取出个数

dataset3['day_of_week'] = dataset3.date_received.astype('str').apply(lambda x:date(int(x[0:4]),int(x[4:6]),int(x[6:8])).weekday()+1)
取出日期对应的星期数,周一,周二,周三。。。

dataset3['day_of_month'] = dataset3.date_received.astype('str').apply(lambda x:int(x[6:8]))
取出日期是每月的多少天

dataset2['days_distance'] = dataset2.date_received.astype('str').apply(lambda x:(date(int(x[0:4]),int(x[4:6]),int(x[6:8]))-date(2016,5,14)).days)
计算日期相对于某一天的间隔天数

dataset3['is_weekend'] = dataset3.day_of_week.apply(lambda x:1 if x in (6,7) else 0)
是否周末。注意此处lambda的写法。1 if xxx else 0

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容