第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

合并數(shù)據(jù)幀,添加/更新字段

合并數(shù)據(jù)幀,添加/更新字段

胡子哥哥 2021-08-11 17:41:29
我正在嘗試pandas在 person_id 上使用,合并/加入兩個(gè)數(shù)據(jù)幀。如果找到匹配項(xiàng),則應(yīng)添加或更新電子郵件字段。它不應(yīng)該創(chuàng)建新行,在 Table_A 中不存在。表_A+-----------+-----------------+------+| person_id |      email      | lang |+-----------+-----------------+------+|         1 |                 | EN   ||         2 | tes2@foo.com    | FR   ||         3 | tes3@barbar.com | DK   |+-----------+-----------------+------+表_B+-----------+--------------+------+| person_id |    email     | kids |+-----------+--------------+------+|         1 | tes1@foo.com |    2 ||         2 | tes2@foo.com |    0 ||         3 | tes3@foo.com |    0 ||         4 | tes4@foo.com |    1 |+-----------+--------------+------+我正在尋找的結(jié)果是+-----------+--------------+------+------+| person_id |    email     | kids | lang |+-----------+--------------+------+------+|         1 | tes1@foo.com |    2 | EN   ||         2 | tes2@foo.com |    0 | FR   ||         3 | tes3@foo.com |    0 | DK   ||         4 | tes5@foo.com |    1 |      |+-----------+--------------+------+------+我試過(guò)df_merged=pd.merge(Table_A,Table_B,on=["person_id"], how="left")這給了我正確的字段,但也生成了 email_x 和 email_y 字段。我只想要一個(gè)電子郵件字段。
查看完整描述

1 回答

?
阿晨1998

TA貢獻(xiàn)2037條經(jīng)驗(yàn) 獲得超6個(gè)贊

這是一個(gè)臨時(shí)解決方案......


合并兩個(gè)數(shù)據(jù)幀并添加后綴。


dfNew = df.merge(df1, left_index=True, right_index=True,how='outer', suffixes=('_y', ''))


     #result

     person_id_y       email_y  lang  person_id         email   kids

            1             None   EN         1    tes1@foo.com     2

            2     tes2@foo.bar   FR         2    tes2@foo.com     0

            3  tes2@barbar.com   DK         3    tes3@foo.com     0

          NaN              NaN  NaN         4    tes4@foo.com     1

然后只過(guò)濾你想要的列


dfNew = dfNew[['person_id','email','kids','lang']]


person_id         email  kids lang

        1  tes1@foo.com     2   EN

        2  tes2@foo.com     0   FR

        3  tes3@foo.com     0   DK

        4  tes4@foo.com     1  NaN


查看完整回答
反對(duì) 回復(fù) 2021-08-11
  • 1 回答
  • 0 關(guān)注
  • 191 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)