python - 如何在循环中替换 Pandas Dataframe 中的值?
问题描述
我有看起来像这样的熊猫数据框:
feat_1 feat_2 feat_3 ... ...
target 10 23 15
UL 0.5 4 7
LL -0.5 -4 -7
其中 UL 和 LL 代表上限和下限,这是索引。我想在循环中替换具有计算限制的值,如下所示:
for col in df.columns:
UL = df[column].loc['target'] + df[column].loc['UL']
LL = df[column].loc['target'] + df[column].loc['LL']
???
所以我想要的输出看起来像这样:
feat_1 feat_2 feat_3 ... ...
target 10 23 15
UL 10.5 27 22
LL 9.5 19 8
解决方案
您可以使用非循环解决方案,例如仅使用DataFrame.loc
:
df.loc[['UL', 'LL']] += df.loc['target']
print (df)
feat_1 feat_2 feat_3
target 10.0 23.0 15.0
UL 10.5 27.0 22.0
LL 9.5 19.0 8.0
像这样工作:
df.loc[['UL', 'LL']] = df.loc[['UL', 'LL']] + df.loc['target']
推荐阅读
- solr - 为 nutch 和 solr 配置 schema.xml
- python - 多个稀疏矩阵的元素相加
- .net-core - 部署到多个 AWS lambda
- c++ - 为什么 .push_back(x) 比 .push_back(std::move(x)) 快
- javascript - React.js如何在更改url时更新重置我的导航栏?
- c - 无法编辑结构的整数
- mysql - SQL 使用数组的元素作为外键
- spring - java.lang.IllegalArgumentException:无法将 java.lang.String 字段 package.Class.id 设置为 java.lang.String
- java - Java SOAPResponse to Marshall - 预期元素是 <{}request>
- r - 去除/平滑 ggplot2 热图中的 x 轴间隙