【问题标题】:dataframe.groupby.agg TypeError: _agg_2dim() takes 1 positional argument but 2 were givendataframe.groupby.agg TypeError: _agg_2dim() 采用 1 个位置参数,但给出了 2 个
【发布时间】:2021-06-28 00:39:10
【问题描述】:

我正在尝试按部门分组,并将具有相应经度和纬度的列保留到部门内人口最多的城市。知道为什么这不起作用吗?


popDEP = pop.copy().groupby("dep", as_index=False)[["dep","lon","lat","total"]].agg({'total': ['max']})

Population ... Traceback (most recent call last):
  File "maintrain.py", line 43, in <module>
    popDEP = pop.copy().groupby("dep", as_index=False)[["dep","lon","lat","total"]].agg({'total': ['max']})
  File "/home/ludo915/anaconda3/lib/python3.8/site-packages/pandas/core/groupby/generic.py", line 951, in aggregate
    result, how = self._aggregate(func, *args, **kwargs)
  File "/home/ludo915/anaconda3/lib/python3.8/site-packages/pandas/core/base.py", line 410, in _aggregate
    result = _agg(arg, _agg_2dim)
  File "/home/ludo915/anaconda3/lib/python3.8/site-packages/pandas/core/base.py", line 383, in _agg
    result[fname] = func(fname, agg_how)
TypeError: _agg_2dim() takes 1 positional argument but 2 were given

【问题讨论】:

标签: python pandas pandas-groupby aggregate


【解决方案1】:

我认为您已经有一个名为“total”的列名,并且您再次尝试创建一个具有相同名称的列,即此处的“total” agg({'total': ['max']})。

所以更改列名。

【讨论】:

  • 如果是这样,我应该在哪里指定我希望在“总计”列中选择最大值?
猜你喜欢
  • 2023-01-11
  • 1970-01-01
  • 2021-01-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-01-10
  • 1970-01-01
  • 2013-10-28
相关资源
最近更新 更多