Skip to main content
 首页 » 编程设计

python之Pandas :合并数据框和替换值

2025年05月04日21shihaiming

我有两个数据框:

   A = pd.DataFrame(data=np.array([['t1',1,'t2',2]]).reshape(2,2),columns=['a','b']) 
 
A 
Out[6]:  
    a  b 
0  t1  1 
1  t2  2 
 
B = pd.DataFrame(data=np.array([[1,2,3],[2,5,6],[3,6,7]]).reshape(3,3),columns=['x','y','z']) 
 
B 
Out[8]:  
   x  y  z 
0  1  2  3 
1  2  5  6 
2  3  6  7 

即我想合并这两个数据帧,使输出看起来像这样:

   x   y  z 
0  t1  2  3 
1  t2  5  6 
2  3   6  7 

有什么想法可以解决这个问题吗?

请您参考如下方法:

B.loc[B.x.astype(str).isin(A.b), 'x'] = A.a 
 
B 
 
    x  y  z 
0  t1  2  3 
1  t2  5  6 
2   3  6  7