2 个数据帧之间的复杂链接

Bea*_*ept 2 python dataframe python-3.x pandas

我有 2 个数据框。第一个是我的参考

df_ref
ID  REF  VALUE
A   1    12
A   2    36
A   3    95
B   1    54
B   2    67
B   3    81
C   1    89
C   2    123
C   3    14
Run Code Online (Sandbox Code Playgroud)

第二个是我的限制:

df_restrict
ID  V1  V2
A   1   2
B   3   2
C   2   1
Run Code Online (Sandbox Code Playgroud)

我想要的是将 V1 和 V2 替换为与fromdf_restrict相对应的值(ID, REF)df_ref

df_restrict
ID  V1  V2
A   12  36
B   81  67
C   123 89
Run Code Online (Sandbox Code Playgroud)

提前致谢

Shu*_*rma 5

我们可以旋转df_ref重塑,然后设置 的索引df_restrictID然后转置并替换重塑后的值df_ref

r = df_ref.pivot('REF', 'ID', 'VALUE')
df_restrict.set_index('ID').T.replace(r).T
Run Code Online (Sandbox Code Playgroud)
     V1  V2
ID         
A    12  36
B    81  67
C   123  89
Run Code Online (Sandbox Code Playgroud)