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

如何将df1的a1-a4表头及id首列数据添加到df2中

操作实现方案

以下是两种主流数据处理语言的实现方法,默认你给出的两个数据框行数一致,可直接执行:

Python(Pandas 环境)

操作步骤:

  • 给df2设置列名,直接复用df1除id外的列名:df2.columns = df1.columns.drop('id')
  • 将df1的id列插入到df2的最左侧:df2.insert(0, 'id', df1['id'])

完整可运行示例:

import pandas as pd

# 模拟示例数据
df1 = pd.DataFrame({
    'id': [21, 22],
    'a1': [.2, .4],
    'a2': [.4, .5],
    'a3': [.1, .1],
    'a4': [.7, .2]
})
df2 = pd.DataFrame([
    [.2, .4, .2, .3],
    [.3, .5, .2, .1]
])

# 执行替换和新增操作
df2.columns = df1.columns.drop('id')
df2.insert(0, 'id', df1['id'])

# 查看最终df2
print(df2)

输出结果:

id   a1   a2   a3   a4
0  21  0.2  0.4  0.2  0.3
1  22  0.3  0.5  0.2  0.1

R语言环境

Base R 实现:

# 设置列名
colnames(df2) <- setdiff(colnames(df1), "id")
# 新增id列到最左侧
df2 <- cbind(id = df1$id, df2)

dplyr 实现:

library(dplyr)

df2 <- df2 %>%
  # 复用df1除id外的列名
  set_names(setdiff(colnames(df1), "id")) %>%
  # 新增id列到最左侧
  mutate(id = df1$id, .before = 1)

注意:如果两个数据框行数不一致,需要先按匹配规则对齐数据后再执行上述操作,避免字段错位。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.23 20:06:04