我有一个包含车辆延迟时间的数据帧。每行都包含车辆ID,行程日期以及出于不同延迟原因的几个单独属性。延迟列中的每个单元都是整数,表示延迟的长度(以分钟为单位),0表示无延迟。我试图通过groupby + agg计算每个原因每个月的延迟次数,以提供我定义给agg的功能。
def f(col):
'''The function counting number of delays'''
col = col.apply(lambda x: 1 if x>0 else 0)
return col.sum()
delays = vehicles_df.groupby('Month').agg({'CarrierDelay': f,
'WeatherDelay': f})
这将为大约一半的月份和延迟原因组合返回正确的结果,但是其余组合为inf。如果我出于相同的月份和延误原因单独运行该函数,它将返回正确的结果。对此原因/解决方法的任何想法都将受到赞赏。