我有一個關于重復和熊貓的問題。我有兩個必須外部連接的資料框,例如,給出了 df 1
| ID | 型別 | 值1 |
|---|---|---|
| 1 | 一種 | 100 |
| 1 | 乙 | 200 |
其中id==1包含兩種具有不同值的型別,我想將其與另一個 df 結合,
| ID | 值2 | 值3 |
|---|---|---|
| 1 | 50 | 300 |
我正在合并兩者使用
df_merged = df1.merge(df2,how='outer',on='id')
結果是
| ID | 型別 | 值1 | 值2 | 值3 |
|---|---|---|---|---|
| 1 | 一種 | 100 | 50 | 300 |
| 1 | 乙 | 200 | 50 | 300 |
很明顯,value2 和 value3 重復,如果我想對 value2 或 value3 求和,這可能會產生問題。有沒有辦法合并和創建例如
| ID | 型別 | 值1 | 值2 | 值3 |
|---|---|---|---|---|
| 1 | 一種 | 100 | 50 | 300 |
| 1 | 乙 | 200 | NaN | NaN |
或某種型別的其他方法?
謝謝!
uj5u.com熱心網友回復:
您可以按照您的描述進行合并,然后使用:
df_merged.loc[df_merged.duplicated(subset=[dupe_cols]), [dupe_cols]] = np.nan
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/357479.html
上一篇:繪制堆積條形圖
