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

如何将DataFrame指定列移至首位?(适用于多列场景)

解决方法

这里有两种高效的方法,不用手动罗列所有100列就能把指定列移到首位:

方法1:pop + insert 组合

先通过pop()取出目标列,再用insert()把它放到第0位(首位),代码如下:

# 取出目标列,pop会从原DataFrame中移除该列并返回它
target_col = df.pop('Gross foreign liabilities')
# 将取出的列插入到索引0的位置(首位),指定列名和数据
df.insert(0, 'Gross foreign liabilities', target_col)

要是之前用pop()报错,大概率是列名拼写有误,或者没正确接收返回的列数据,按上面的写法就没问题。

方法2:重构列名列表

直接构造新的列顺序,把目标列放在最前面,后面跟上剩下的所有列:

# 生成新列名列表:目标列 + 排除目标列后的其他所有列
new_column_order = ['Gross foreign liabilities'] + [col for col in df.columns if col != 'Gross foreign liabilities']
# 按新顺序重新排列DataFrame的列
df = df[new_column_order]

这种方法更直观,适合不想修改原DataFrame结构(可以选择不原地修改)的场景。

两种方法都能轻松处理100列的情况,不用手动写全所有列名。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.10 04:15:31