python - 如何在 pd.Dataframe 的每列值内进行操作?
问题描述
我有一个pandas Dataframe'final_data['130 + 71444']'
,我想在为单元格内的每个值进行以下数学运算之后将结果写入列:
final = pd.read_csv(path, header=0, parse_dates=True, index_col="Tagname")
final_data = pd.DataFrame(final)
编辑:我试过:
final_data['130 + 71444'] = (final_data['130.c'] + final_data['7144.c'])/final_data['c']
但是会显示以下错误:
TypeError: unsupported operand type(s) for /: 'str' and 'str'
我该怎么做?
解决方案
利用:
final_data['130 + 71444'] = (final_data['130.c'].astype(float) + final_data['7144.c'].astype(float))/final_data['c'].astype(float)
如果上面的代码不起作用,因为某些非数值使用to_numeric
witherriors='coerce'
将这些值转换为缺失值:
final_data['130 + 71444'] = (pd.to_numeric(final_data['130.c'], errors='coerce') + pd.to_numeric(final_data['7144.c'], errors='coerce') )/pd.to_numeric(final_data['c'], errors='coerce')
推荐阅读
- python - 如何使用 Pandas to_html 将相同的 html bg 颜色应用于所有列
- java - 如何在 Spring MVC 中将用户输入与 BigDecimal 对象字段绑定?
- python - 如何在没有交叉函数的情况下从 joblib 运行具有多参数的并行函数
- cordova - ionic 5 和 cordova - 构建错误:为 iOS 构建时 xcworkspace 不是工作区文件
- amazon-web-services - 如何从 EMR 集群的 AWS Paramstore 中提取参数
- python - 在 Mac 上运行 python 应用程序而不安装 python
- here-api - Bug: POI图片heremap api api code和apikey的区别
- node.js - 模拟 fs readFile 在原始值上给出了 Cannot spyOn ;给定的未定义
- javascript - Angular 5 中未显示反应式表单验证错误
- python - 如果条件作为 Python For 循环中的停止标准