You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何为Pandas的PR DataFrame新增固定值为CRNBJ的hub列

给Pandas DataFrame新增固定值列的实现

问题背景

现有通过Excel读取并筛选得到的Pandas DataFrame(命名为PR),包含planvol、actualvol等列;另有一个值为'CRNBJ'的变量hub。需要在PR的planvol、actualvol列之后新增名为hub的列,该列所有行的取值均为CRNBJ。

现有相关代码:

读取并筛选PR的代码

import pandas as pd

PR = pd.read_excel(input_file_path, sheet_name='Daily Operating Plan', usecols='I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W') 
PR = PR.iloc[[10,14,17,27,35,40,45,50]] 

hub变量相关代码

hub = df['hub']
print(hub)  # 输出结果:CRNBJ

实现方案

方法一:精准插入到指定位置

使用insert方法可以直接在actualvol列之后插入新列,代码如下:

# 获取actualvol列的索引位置,在其后插入新列
insert_position = PR.columns.get_loc('actualvol') + 1
# 插入hub列,所有行赋值为hub变量的值
PR.insert(insert_position, 'hub', hub)

方法二:先新增列再调整顺序

如果不需要严格控制插入时机,也可以先新增列,再调整列的位置:

# 新增hub列并赋值
PR['hub'] = hub
# 调整列顺序,将hub移到actualvol之后
column_list = PR.columns.tolist()
actualvol_index = column_list.index('actualvol')
# 取出hub列并插入到actualvol后面
column_list.insert(actualvol_index + 1, column_list.pop(column_list.index('hub')))
# 重新设置DataFrame的列顺序
PR = PR[column_list]

预期输出

执行上述代码后,PR的结构示例如下:

planvolactualvolhub
1020CRNBJ
1121CRNBJ
1222CRNBJ

内容的提问来源于stack exchange,提问作者RobinHood

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.16 14:31:00