我有一个很大的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:没有要聚合的数字类型
答案 0 :(得分:0)
该错误消息表明您的数据类型是非数字的,并且不能被聚合函数使用。使用
df.dtypes
查看您的数据类型。如果它们不是int / float,则必须对其进行转换:
df['A'] = df['A'].astype(float)
然后执行分组方式