假設我們有一個 dataframe1 看起來像tag randomEnglish abcFrench xyzChinese poi和 dataframe2 看起來像這樣language translation dataEnglish hello 5 hi 3 hey 1Chinese nihao 4 xyz 0Dutch oy 9French bonjour 7我想實現一個如下所示的數據框:outputtag translation dataEnglish hello 5Chinese nihao 4French bonjour 7我知道我需要做類似的事情df = pd.merge(df1, df2, left_on='tag', right_on='language')但是當我這樣做時我遇到了一堆錯誤..
1 回答

素胚勾勒不出你
TA貢獻1827條經驗 獲得超9個贊
df2 是一個系列而不是數據幀,按多索引的 0 級對其進行分組,選擇第一行并重置索引以將系列轉換為數據幀?,F在使用合并。
df1[['tag']].merge(df2.groupby(level=0).head(1).reset_index(),\
left_on = 'tag', right_on = 'language', how = 'left').drop('language', axis = 1)
tag translation data
0 English hello 5
1 French bonjour 7
2 Chinese nihao 4
添加回答
舉報
0/150
提交
取消