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

pandas如何将单个DataFrame的A1列合并至A列并删除A1列

解决方案

直接用pd.concat做纵向拼接就能实现,逻辑非常直接:

  • 拆分出两个子数据集,第一个保留原表的id、A列
  • 第二个子数据集保留原表的id列,将A1列重命名为A
  • 纵向拼接两个子数据集,重置索引即可,原A1列不需要额外单独删除。

完整代码:

import pandas as pd
import numpy as np

# 原始测试数据
df = pd.DataFrame({
    'id': [0.1, 0.2, 0.3, 0.4],
    'A': [1, 2, np.NaN, np.NaN], 
    'A1': [np.NaN, np.NaN, 3, 4]
})

# 合并逻辑
df_result = pd.concat(
    [
        df[['id', 'A']],
        df[['id', 'A1']].rename(columns={'A1': 'A'})
    ],
    ignore_index=True
)

执行后df_result的输出和你给出的预期结果完全匹配:

id    A
0  0.1  1.0
1  0.2  2.0
2  0.3  NaN
3  0.4  NaN
4  0.1  NaN
5  0.2  NaN
6  0.3  3.0
7  0.4  4.0

如果你后续有更多同规则的列(比如A2、A3)需要合并到A列,只需要在concat的列表里追加对应重命名后的子表即可,不需要修改其他逻辑。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.02 02:28:04