如何用pandas查找含add-on的列并将数值合并到前一列
实现代码
你可以参考以下pandas代码完成需求,逻辑是先定位所有带add-on后缀的列,遍历后将值累加到前一相邻列,最后删除冗余的add-on列即可:
import pandas as pd # 假设你已经读取数据得到DataFrame对象df # 1. 筛选所有包含add-on的列 add_on_cols = [col for col in df.columns if "add-on" in col] # 2. 遍历每个add-on列,值累加到前一列 for add_on_col in add_on_cols: # 获取当前add-on列的位置索引 col_index = df.columns.get_loc(add_on_col) # 取前一相邻列的列名 main_col = df.columns[col_index - 1] # 数值相加合并 df[main_col] = df[main_col] + df[add_on_col] # 3. 删除所有add-on列,得到最终结果 df = df.drop(columns=add_on_cols)
结果验证
拿你给出的示例数据测试后,合并后的列数值符合预期:
- notebooks列合并后值为
5+3=8、7+2=9、4+6=10 - bookbag列合并后值为
6+2=8、9+3=12、9+0=9 - pencils、pens、date列不受影响,保持原有数值
内容的提问来源于stack exchange,提问作者cecil342
相关产品推荐
相关产品推荐

