首页 > 解决方案 > 如何解决此问题不支持嵌套重命名器

问题描述

SpecificationError                        Traceback (most recent call last)
<ipython-input-42-d850d85f8342> in <module>
----> 1 train_label=extract_feature(train,train_label)

<ipython-input-33-23ab8dbf7d96> in extract_feature(df, train)
      1 def extract_feature(df,train):
----> 2     t=groupy_feature(df,'ship','x',['max','min','mean','std','median','std','skew','sum'])
      3     train=pd.merge(train,t,on='ship',how='left')
      4     t=groupy_feature(df,'ship','y',['max','min','mean','std','median','std','skew','sum'])
      5     train=pd.merge(train,t,on='ship',how='left')

<ipython-input-32-63d47754fe81> in groupy_feature(df, key, target, aggs)
      4         agg_dict[f'{target}_{agg}']=agg
      5     print(agg_dict)
----> 6     t=df.groupby(key)[target].agg(agg_dict).reset_index()
      7     return t

~\AppData\Roaming\Python\Python37\site-packages\pandas\core\groupby\generic.py in aggregate(self, func, *args, **kwargs)
    251             # but not the class list / tuple itself.
    252             func = _maybe_mangle_lambdas(func)
--> 253             ret = self._aggregate_multiple_funcs(func)
    254             if relabeling:
    255                 ret.columns = columns

~\AppData\Roaming\Python\Python37\site-packages\pandas\core\groupby\generic.py in _aggregate_multiple_funcs(self, arg)
    292             # GH 15931
    293             if isinstance(self._selected_obj, Series):
--> 294                 raise SpecificationError("nested renamer is not supported")
    295 
    296             columns = list(arg.keys())

**SpecificationError: nested renamer is not supported**

标签: pythonpandas

解决方案


我在中看到两次“std”一词

t=groupy_feature(df,'ship','x',['max','min','mean','std','median','std','skew','sum'])


推荐阅读