将用户定义的函数与agg一起使用时返回的inf

时间:2019-06-10 13:40:43

标签: python pandas pandas-groupby

我有一个包含车辆延迟时间的数据帧。每行都包含车辆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。如果我出于相同的月份和延误原因单独运行该函数,它将返回正确的结果。对此原因/解决方法的任何想法都将受到赞赏。

0 个答案:

没有答案