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

如何按列的字母顺序向Pandas DataFrame中插入数据?

解决方法:插入行后按指定列的字母顺序排序

要实现你需要的效果,核心思路是先插入新行,再按foo列的字母顺序对整个DataFrame进行排序,具体步骤和代码如下:

步骤1:构建原始DataFrame

先还原你提供的旧DataFrame:

import pandas as pd

old_df = pd.DataFrame({
    'bar': [1, 3, 5],
    'foo': ['a', 'b', 'z']
})

步骤2:准备并插入新行

推荐使用pd.concat来合并原始DataFrame和新行(因为append方法已被Pandas官方弃用):

# 将待插入的[6, "d"]转换为DataFrame格式
new_row = pd.DataFrame({'bar': [6], 'foo': ['d']})

# 合并两个DataFrame,ignore_index=True会重置索引避免重复
combined_df = pd.concat([old_df, new_row], ignore_index=True)

步骤3:按foo列的字母顺序排序

使用sort_values方法按foo列的字母升序排序,最后重置索引让结果更整洁:

# 按foo列字母顺序排序,reset_index(drop=True)丢弃原索引
new_df = combined_df.sort_values(by='foo').reset_index(drop=True)

执行以上代码后,new_df就会得到你想要的结果:

bar foo
0    1   a
1    3   b
2    6   d
3    5   z

补充说明

  • 如果你需要按其他列的字母顺序排序,只需要修改sort_values中的by参数即可;如果目标列是数值类型,想按字符串形式的字母顺序排序,可先转换列类型再操作。
  • sort_values默认是升序排列,刚好符合字母从a到z的顺序,如果需要倒序可以添加ascending=False参数。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.21 08:26:24