我有两个df
df1:
index text 1 string1 2 string2 3 string3 4 a 5 string5 6 a
df2:
index text 4 string4 6 string6
如何根据索引将df1中的文本“ a”替换为df2中的值,以便显示如下。
df3:
index text 1 string1 2 string2 3 string3 4 string4 5 string5 6 string6
答案 0 :(得分:1)
您可以将熊猫update
用作:
df1.set_index('index',inplace=True)
df2.set_index('index',inplace=True)
df1.update(df2) #df1 is changed
或
df1.loc[df2.index,'text'] = df2['text'] #df1 is changed
或者输出要在df3中
df3 = df1.copy()
df3.update(df2) #df3 is changed
所有人都产生:
text
index
1 string1
2 string2
3 string3
4 string4
5 string5
6 string6
答案 1 :(得分:0)
这将起作用
pd.merge(df1[[]], df2, left_index=True, right_index=True)
或
df2.loc[df1.index]