Python 使用另一个df替换列值

Python 使用另一个df替换列值,python,pandas,replace,Python,Pandas,Replace,你好,我有两个df,比如 df1 Ancient New Seq1.1 Seq1.1_A Seq2 Se2.4_3 还有一个 df2 COL1 COL2 A Seq1.1 B Plants C YP_OODDD D Seq2 我想替换对应于df.olution列的COL2值,并将其替换为相应的df1.New 得到 COL1 COL2 A Seq1.1_A B Plants C YP_OODDD D Se2.4_3 与由创建的系列一起

你好,我有两个df,比如

df1

Ancient New 
Seq1.1  Seq1.1_A
Seq2    Se2.4_3
还有一个

df2

COL1 COL2
A    Seq1.1
B    Plants
C    YP_OODDD
D    Seq2
我想替换对应于
df.olution
列的
COL2
值,并将其替换为相应的
df1.New

得到

COL1 COL2
A    Seq1.1_A
B    Plants
C    YP_OODDD
D    Se2.4_3
与由创建的
系列一起使用,并选择volumn
New

df2['COL2'] = df2['COL2'].replace(df1.set_index('Ancient')['New'])
print (df2)
  COL1      COL2
0    A  Seq1.1_A
1    B    Plants
2    C  YP_OODDD
3    D   Se2.4_3

将第一个数据帧的索引设置为古代的
df。设置索引
,然后使用
df2.col2.replace(df.new)
传递序列作为参数

    df=pd.DataFrame({"col1":["john","amber"],"col2":["a","h"]})
    df2=pd.DataFrame({"ab":["m","g"],"ful":["abraham","heard"]})
    print(df,"\n",df2)
    df2.set_index("ab",inplace=True)
    df.col2=df.col2.replace(df2['ful'])
    df
输出:

        col1 col2
    0   john    a
    1  amber    h 

       ab      ful
    0  a  abraham
    1  h    heard

        col1    col2
    0   john    abraham
    1   amber   heard