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

如何基于COD_ENCUESTAS列匹配合并两个DataFrame数据

基于COD_ENCUESTAS列合并两个DataFrame(保留df1全部行)

现有两个DataFrame:

  • df1包含P_SEXO、P_EDADR、COD_ENCUESTAS列,其中COD_ENCUESTAS存在重复值
  • df2包含COD_ENCUESTAS和VA1_ESTRATO列

需基于COD_ENCUESTAS列将两表匹配合并,得到包含df1全部行及对应VA1_ESTRATO值的结果表。

df1表结构

P_SEXO P_EDADR COD_ENCUESTAS
   <dbl>   <dbl>         <dbl>
1      2      16            74
2      2       9            75
3      2      18            75
4      2      11            75
5      2      11            76
6      2       1            76

df2表结构

COD_ENCUESTAS VA1_ESTRATO
          <dbl>       <dbl>
1           74          24
2           75          23
3           76          12
4           77           23
5           78           14
6           79          11

期望输出结果

P_SEXO P_EDADR COD_ENCUESTAS    VA1_ESTRATO 
   <dbl>   <dbl>         <dbl>   <dbl>
1      2      16            74    24
2      2       9            75    23
3      2      18            75    23
4      2      11            75    23
5      2      11            76    12
6      2       1            76    12

实现代码

使用Pandas的merge函数执行左连接,即可保留df1全部行并匹配对应值:

import pandas as pd

merged_df = pd.merge(df1, df2, on='COD_ENCUESTAS', how='left')

说明:how='left'参数确保保留df1的所有记录,若df1中某条COD_ENCUESTAS在df2无匹配项,对应VA1_ESTRATO会显示为NaN。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.26 06:27:27