pandas Groupby函数

ktecyv1j  于 2023-10-14  发布在  其他
关注(0)|答案(2)|浏览(155)

我有一个汽车销售的数据集。(我是数据科学的初学者,所以它是用于询问查询的任意数据。

car_sales = pd.DataFrame({'Make':['BMW','Nissan','Toyota'], 'Color':['White','Black','Grey'], 'Odometer':[8000,4000,9000], 'Price':[4000,5000,6000]})

如果我想按Make列对汽车销售DataFrame的列进行分组并找到平均值,
我使用的代码如下:

car_sales.groupby(['Make']).mean()

但它显示了我的错误:TypeError:agg函数失败[how->mean,dtype->object]
这个语法在我正在做的视频讲座中也是如此,但是我的笔记本上显示出了类型错误。

njthzxwz

njthzxwz1#

当你在所有列上做平均值时,错误就来了,颜色列是对象数据类型,要解决这个问题,你可以使用Panda Kim和Nimantha Fernando的方法。还有一种方法,即。(使用agg()和groupby),你可以使用其他方法,以及广泛。

car_sales = pd.DataFrame({'Make':['BMW','Nissan','Toyota'], 'Color':['White','Black','Grey'], 'Odometer':[8000,4000,9000], 'Price':[4000,5000,6000]}) 

car_sales.groupby('Make').agg({'Odometer': 'mean', 'Price': 'mean'})
tp5buhyn

tp5buhyn2#

你得到的错误是由mean()函数试图计算数据框中所有列(包括非数值列)的平均值引起的。为了计算均值,您需要首先选择这些列,然后应用groupby()mean()运算。

selected_columns = car_sales[['Odometer', 'Price']]

selected_columns.groupby(car_sales['Make']).mean()

相关问题