python - 根据列名计算并获取名称作为计算的一部分
问题描述
我需要根据列名计算差异,并将列名的一部分用作计算的一部分。
因此,目前,促销值的列是空的。我需要计算第一行 get2for30 将是 (X-30) 和第二列 GET2FOR31 (x-31) 并显示相应“单元格”中的值。我想知道是否有办法使用熊猫来做到这一点。
更新 - 我遇到的另一个问题是 Get2forX 的列上升到 90,所以最后一列是 get2for90。我想知道是否有类似函数适用于所有这些类型的列。(无需编写 90 行代码)
解决方案
You can simply do this:-
df['GET2FOR30'] = df.Prices - 30
df['GET2FOR31'] = df.Prices - 31
...
Or for big number of columns:-
cols = df.columns
initial = 30
for i, j in enumerate(cols[2:]):
if 'GET2FOR'in j:
df[j] = df.Prices - (i + initial)
推荐阅读
- javascript - javascript中的复选框ID列表
- python - 试图在 django 中读取文本文件
- android - MLKit 识别不良
- sql - SQL:WHERE 检查多列(其中只有一列必须不为空)
- javascript - Eclipse 无法读取 React JSX 语法
- python - 在 python 中错误地读取文本文件的行
- webassembly - WebAssembly 规范中的“块”和“循环”有什么区别?
- angular - angular 2+ 表格行详细信息功能
- java - 何时以及如何创建 cglib 代理的组件实例
- javascript - 如何将所有选定的文本包装到 span 元素中?