我想在此DataFrame上使用.groupby()。mean(),但是,它没有忽略NaN值。
这是我的DataFrame的图片
'Quarters'是我的最后一行,因此我进行转置以使其成为最后一列,并按'Quarters'分组,然后对所有县执行.mean()。我希望将新的DataFrame存储在一个新变量中,列索引作为县名称,行索引作为'Quarters',每个单元格是3个单元格的平均值,这3个单元格与前一个DataFrame共享相同的County和'Quarters'。
我这样做:
ANSWER = City_Zhvi_AllHomes.T.groupby('Quarters').mean().T
但是我得到了
DataError:没有要聚合的数字类型
如果在.groupby()之前执行.fillna(0),它将起作用,这是该图片(除非我再次换行和换行)
但是我不能这样做,因为它将影响均值的结果。那么,我该如何告诉.mean()忽略NaN?
答案 0 :(得分:0)
您可以对mean()使用 skipna 参数。
ANSWER = City_Zhvi_AllHomes.T.groupby('Quarters').mean(skipna=True).T
这将为您提供可用值的平均值。