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

如何对列名不同的两个Data Frame执行rbind并填充缺失列值?

解决方案(Pandas)

步骤说明

  1. 为DF2补充缺失的Prec_CAN_85列,用每行的Prec_CAN_45值填充
  2. 将处理后的DF2与DF1按行拼接,确保DF2的行排在DF1上方

代码实现

import pandas as pd

# 创建原始DataFrame
DF1 = pd.DataFrame({
    'Year': [2015, 2100],
    'Month': ['Jan', 'Jan'],
    'Prec_CAN_45': [0.5, 0.6],
    'Prec_CAN_85': [0.65, 0.75]
})

DF2 = pd.DataFrame({
    'Year': [1998, 2014],
    'Month': ['Jan', 'Jan'],
    'Prec_CAN_45': [0.3, 0.4]
})

# 为DF2补充Prec_CAN_85列,用Prec_CAN_45的值填充
DF2['Prec_CAN_85'] = DF2['Prec_CAN_45']

# 拼接两个DataFrame,DF2在前,DF1在后,重置索引
DF3 = pd.concat([DF2, DF1], ignore_index=True)

print(DF3)

输出结果

YearMonthPrec_CAN_45Prec_CAN_85
01998Jan0.30.3
12014Jan0.40.4
22015Jan0.50.65
32100Jan0.60.75

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.22 06:30:15