python - 由于列中有“nan”值,有没有办法解决“DataError:没有要聚合的数字类型”?
问题描述
我有一个这样的数据框
import pandas as pd
import numpy as np
df = pd.DataFrame({
"name": ["john","peter","john","peter","peter"],
"height": ["6","5","4","nan","8"],
})
df
我想做 GROUPBY name 和 AGG 的高度平均值
df2=df.groupby('name')
df3=df2.agg({'height':'mean'})
但我得到这个错误 DataError: No numeric types to aggregate 我做了一些搜索并应用了这个
df.height = pd.to_numeric(df.height,errors='ignore')
但是代码仍然不起作用,我得到了同样的错误!
“nan”值是由于我在以前的数据帧上进行的一些连接而创建的。感谢您的时间和帮助。我会赞成你的答案。
解决方案
您需要使用 sum() 函数
df2=df.groupby('name').height.sum()
我希望你觉得这对你有帮助
推荐阅读
- apache-kafka - 尝试运行 kafka 服务器时出现显示超时异常的致命错误
- php - 如何从一列中分别计算值取决于 codiegniter 中的值?
- php - Eclipse 2021-03 PHP:为什么注释中的注释被报告为错误?
- vue.js - 在 vue.js 中创建一个可重用的组件
- node.js - 如何发送文件 res.send() 以及一些 json 数据。该文件必须在 Postman 端下载
- azure-active-directory - CORS 策略在 IdentityServer4 中不起作用
- javascript - 所有值都为真,尽管值已更改
- asp.net-core - .NET Core 3.1 - Angular 9 - ERR_TOO_MANY_REDIRECTS
- api - Bitbucket API - REST - 如何按名称搜索存储库
- vue.js - 查找 tsconfig.json 或 jsconfig.json 时出现 Vetur 错误