亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

基于pandas中的2個條件合并2個數據框

基于pandas中的2個條件合并2個數據框

慕無忌1623718 2021-12-09 18:21:30
如何用第一個 df 中的值替換 NaN 值:    country   sex    year      cancer0   Albania  female  2000       321   Albania  male    2000       582   Antigua  female  2000       23   Antigua  male    2000       54   Argen    female  2000       5915   Argen    male    2000       2061在第二個 df 中:    country year    sex    cancer0   Albania 1985    female  NaN1   Albania 1985    male    NaN2   Albania 1986    female  NaN3   Albania 1986    male    NaN4   Albania 1987    female  25.05   Antigua 1992    male    NaN6   Antigua 1985    female  NaN  最終應如下所示:country year    sex     cancer     0   Albania 1985    female  32    1   Albania 1985    male    58    2   Albania 1986    female  32    3   Albania 1986    male    58    4   Albania 1987    female  25    5   Antigua 1992    male    5    6   Antigua 1985    female  2 重要的是 2 個條件國家和性別
查看完整描述

1 回答

?
米脂

TA貢獻1836條經驗 獲得超3個贊

我最終使用 fillna


df2.set_index(['country','sex'],inplace=True)

df2['cancer']=df2['cancer'].fillna(df1.set_index(['country','sex']).cancer)

df2.reset_index(inplace=True)

df2

Out[745]: 

   country     sex  year  cancer

0  Albania  female  1985    32.0

1  Albania    male  1985    58.0

2  Albania  female  1986    32.0

3  Albania    male  1986    58.0

4  Albania  female  1987    25.0

5  Antigua    male  1992     5.0

6  Antigua  female  1985     2.0


查看完整回答
反對 回復 2021-12-09
  • 1 回答
  • 0 關注
  • 263 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號