如何按多列表指定的索引修改DataFrame对应列的值
解决方案
可以通过列名-索引列表的字典映射,结合循环批量处理需要替换的列,高效完成多列的指定索引值替换:
import pandas as pd # 初始化示例DataFrame(实际使用时替换为你的真实DataFrame) df = pd.DataFrame({ 'Column A': ['marcos', 'Julila', 'Fran', 'Pedri', 'Olmo'], 'Column B': ['peter', 'mike', 'Ramon', 'Gavi', 'Torres'] }) # 定义需要处理的列与对应索引列表的映射字典 col_index_map = { 'Column A': [0, 1, 2], 'Column B': [2, 4], # 按需添加剩余6列的映射,格式为 '列名': [索引1, 索引2, ...] } substitution = 'no data' # 遍历映射字典,批量替换指定位置的值 for col, indices in col_index_map.items(): df.loc[indices, col] = substitution # 查看处理后的结果 print(df)
这段代码会直接将每个指定列中对应索引位置的值替换为no data,完全匹配你给出的示例输出。后续新增需要处理的列时,只需在col_index_map字典中补充对应的键值对即可,不需要修改核心逻辑。
内容的提问来源于stack exchange,提问作者D EA
相关产品推荐
相关产品推荐

