python - 根据单个列中的值向数据框列添加值
问题描述
我有一个DataFrame
每年的 kg/ha 值,其中列从 1950 年到 2015 年。第一列是gridcode_1
从 1 到 4 的网格代码 ( )。每个网格代码都有一个特定的附加值,我想添加到 kg/ha 值其他列。
我试图通过 for 循环和正则表达式来解决它
for x in kilograms_dep2:
if kilograms_dep2['gridcode_1'] == 1:
kilograms[regex="[0-9]{4}"] + 2.7
elif kilograms_dep2['gridcode_1'] == 2:
kilograms_dep2[regex="[0-9]{4}"] + 16.04
elif kilograms_dep2['gridcode_1'] == 3:
kilograms_dep2[regex="[0-9]{4}"] + 2.7
elif kilograms_dep2['gridcode_1'] == 4:
kilograms_dep2[regex="[0-9]{4}"] + 0.75
但它只会导致语法错误。
这是数据框的前几个条目
gridcode_1 1950_y 1951_y 1952_y 1953_y
1 1477.273256 1477.273256 1477.273256 1477.273256
2 523883.351859 523883.351859 523883.351859 523883.351859
3 2698.864601 2698.864601 2698.864601 2698.864601
4 6458.175014 6458.175014 6458.175014 6458.175014
所以gricode_1 = 1
我想添加2.7
,gridcode_1 = 2
我想添加16.04
等。
对于优雅的解决方案,我将不胜感激。
解决方案
推荐阅读
- python - 在 urlpatterns 中为 MEDIA_URL 提供一个视图
- javascript - Bootstrap 4 工具提示/弹出框使用自动放置作为后备(两个放置值)
- reactjs - 如何删除附加到 React 中状态的加载更多按钮?
- db2 - 无法在 db2 中合并 clob
- tensorflow - 为什么要在深度学习中重新缩放图像?
- c# - 在 Plesk 服务器上创建 ODBC 连接后,如何在我的 asp.net 代码中使用它?
- css - Firefox 中的 CSS 动画不流畅
- python - 如何根据用户输入从文件中读取特定字符串
- excel - 在 Excel 中最后一个字符实例之后删除任何内容
- linux - 当通过 ssh 从远程机器上的 Jenkins 执行命令时,如何将输出存储在变量中?