pd.core.groupby.data错误没有要聚合的数字类型 - 好的是max / min,不适合mean / std

时间:2018-01-23 08:28:40

标签: python pandas pandas-groupby

我读了许多与“pandas.core.groupby.data错误没有数字类型聚合”错误相关的问题,但是我无法找到我所面临的问题的答案。

enter image description here

即,我可以在我的.groupby构造上执行某些操作,例如.max().count() ...但.mean().std等操作会提高上面提到的错误。

我在其他主题中看到它可能与数据类型有关,但我正在处理int64,我认为这很好。事实上,如果我在没有分组的情况下调用它,我可以在我感兴趣的列上调用.mean()(参见下面的第二行)。

1 个答案:

答案 0 :(得分:0)

问题holding_time列不是数字,因此首先需要转换:

df['holding_time'] = df['holding_time'].astype(int)

或者:

df['holding_time'] = df['holding_time'].astype(float)

如果解决方案失败,因为混合值 - 带字符串的数字,需要to_numeric参数errors='coerce'才能将不可解析的值转换为NaN s:

df['holding_time'] = pd.to_numeric(df['holding_time'], errors='coerce')