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

Python pandas中如何拼接两个DataFrame?标签编码列与原表合并方法

实现方案

两个DataFrame行数完全一致、行顺序一一对应(标签编码过程未打乱行序)的前提下,最简单的实现方式是按列拼接:

  1. 核心方法用pandas.concat,指定轴向为列(axis=1)即可,代码示例如下:
import pandas as pd

# 模拟原始DataFrame
df_original = pd.DataFrame({
    'age': [32, 25],
    'salary': [3000, 2300]
})

# 模拟标签编码后的DataFrame
df_encoded = pd.DataFrame({
    'country': [1, 4],
    'gender': [1, 2]
})

# 按列拼接完成合并
df_merged = pd.concat([df_original, df_encoded], axis=1)

执行后df_merged就是你需要的目标结果。

补充优化建议

  • 如果担心行序错位,可使用join方法按索引对齐拼接,效果和上述方法一致:
    df_merged = df_original.join(df_encoded)
    
  • 如果原始数据本身就包含country、gender分类列,不需要拆分DataFrame再合并,可以直接在原DataFrame上生成编码列,更高效:
    from sklearn.preprocessing import LabelEncoder
    le = LabelEncoder()
    # 直接给原df更新编码后的列
    df_original['country'] = le.fit_transform(df_original['country'])
    df_original['gender'] = le.fit_transform(df_original['gender'])
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.04 12:00:01