Python pandas.core.base.DataError:尝试使用groupby获取平均值时,没有要聚合的数值类型
当我尝试根据另一列的值获取一列值的平均值时,会出现错误:“pandas.core.base.DataError:没有要聚合的数字类型” 这是列的外观:Python pandas.core.base.DataError:尝试使用groupby获取平均值时,没有要聚合的数值类型,python,pandas,dataframe,Python,Pandas,Dataframe,当我尝试根据另一列的值获取一列值的平均值时,会出现错误:“pandas.core.base.DataError:没有要聚合的数字类型” 这是列的外观: PRESSEDKEY PALABRA COLOR KEYCORR RT CORRECT 90 v ABUSO red r 496 N 108 v FRACASO blue a 168 N 138 v
PRESSEDKEY PALABRA COLOR KEYCORR RT CORRECT
90 v ABUSO red r 496 N
108 v FRACASO blue a 168 N
138 v MORGUE green v 106 Y
150 v ENOJO red r 0 N
156 v ODIO green v 25 Y
我试图得到正确列中值“N”和“Y”的平均RT
这就是我正在尝试的,并给了我提到的错误:
mean_emo = df_emowords.groupby('CORRECT')['RT'].mean()
我怎样才能解决这个问题
DataError:没有要聚合的数字类型
当传递给groupby对象的列/数据不是数字类型时,可以复制。您必须先将其转换为数字:
df_emowords['RT'] = pd.to_numeric(df_emowords['RT'],errors='coerce)
现在可以正确运行:
mean_emo = df_emowords.groupby('CORRECT')['RT'].mean()
检查
dtypes
并查看RT
是否为数字类型