【问题标题】:How to pass argument when using .agg() method?使用 .agg() 方法时如何传递参数?
【发布时间】:2020-05-05 16:39:24
【问题描述】:

目前这是我在数据框中查找特定列的方差和均值的代码

categorize_data = dataset['dayNumber'].between(1, 7)
grouped_priority = dataset[categorize_data].groupby('priority')
grouped_priority.agg({'serviceTime':['var','mean' ] , 'travelTime':['var','mean' ] }).reset_index()

在这段代码var 函数中,它有一个位置参数ddof,默认情况下是1,但我想将ddof 作为0 传递。

如何使用 .agg() 方法实现这一点?

【问题讨论】:

    标签: python-3.x pandas aggregate data-science data-analysis


    【解决方案1】:

    使用自定义 lambda 函数:

    var1 = lambda x: x.var(ddof=0)
    grouped_priority.agg({'serviceTime':[var1,'mean'] , 
                          'travelTime':[var1,'mean'] }).reset_index()
    

    【讨论】:

    • 我使用了 np.var 但仍然得到相同的值(我已经用 'var' 得到了)。但第二个选项工作正常。谢谢
    • @AmanSwarnkar - 你是对的,经过测试。所以第一个解决方案被删除了。如果我的回答有帮助,请不要忘记accept。谢谢。
    猜你喜欢
    • 2014-12-08
    • 1970-01-01
    • 1970-01-01
    • 2017-09-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-12-05
    相关资源
    最近更新 更多