使用pandas-groupby对大型csv文件进行排序并使用函数.mean()

时间:2018-10-25 08:08:09

标签: python csv pandas-groupby

我有一个很大的csv文件,其中包含3列和很多行。 看起来像这样:enter image description here

现在,我希望将ID1的所有行分组,并在C中获取其值的平均值。

我的代码如下:

import pandas as pd
import numpy as np

df = pd.read_csv('file.csv', sep=";",decimal=",", index_col=0)

grouped = df.groupby(['A'])[['C']]
grouped.mean()

运行代码时出现此错误:

但是在csv文件中,我确保没有NaN和任何非数值。

对此我该怎么办?非常感谢!

  

DataError:没有要聚合的数字类型

1 个答案:

答案 0 :(得分:0)

该错误消息表明您的数据类型是非数字的,并且不能被聚合函数使用。使用

df.dtypes

查看您的数据类型。如果它们不是int / float,则必须对其进行转换:

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

然后执行分组方式