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

为何Inflation列位于首列而非第二列?如何调整列顺序(loc无效)

问题分析与解决办法

为什么Inflation列在第一列?

  • 你创建DataFrame时,列的初始定义顺序就将Inflation放在了第一位,pandas会保留这个初始顺序,除非你显式调整。
  • 之前用loc没生效,大概率是没有将调整后的结果重新赋值给原DataFrame——pandas的多数列操作会返回新的DataFrame对象,不会直接修改原数据。

调整列位置的有效方法

方法1:直接指定列顺序重新生成DataFrame

把需要的列按你想要的顺序列出来,重新赋值给原变量:

# 替换成你实际需要的列顺序,比如把Year放在第一,Inflation第二
df = df[['Year', 'Inflation', 'Unemployment', 'GDP Growth']]

方法2:用loc并正确赋值

和方法1逻辑类似,用loc指定列顺序后必须重新赋值:

df = df.loc[:, ['Year', 'Inflation', 'Unemployment', 'GDP Growth']]

方法3:用pop+Insert精准移动列

如果只想把Inflation移到第二列,不用全量列出所有列:

# 取出Inflation列
inflation_col = df.pop('Inflation')
# 插入到索引1的位置(对应第二列,索引从0开始)
df.insert(1, 'Inflation', inflation_col)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.12 18:54:57