![](/img/trans.png)
[英]Change values in DF Column based first digit of value in another DF Column
[英]Column value from first df to another df based on condition
我有原始 df,其中有“平均”列,其中計算國家/地區的平均值。 現在我有了 new_df,我想在其中添加基於國家/地區的這些 df 平均值。
df
id country value average
1 USA 3 2
2 UK 5 5
3 France 2 2
4 USA 1 2
new df
country average
USA 2
Italy Nan
我有一個有效的解決方案但是有一個問題,當在 new_df 中有一個我還沒有計算平均值的國家時。 在那種情況下,我只想填寫 nan。
你能給我推薦任何解決方案嗎?
謝謝
如果需要將average
列添加到 df2,請使用DataFrame.merge
和DataFrame.drop_duplicates
:
df2.merge(df1.drop_duplicates('country')[['country','average']], on='country', how='left')
如果需要匯總mean
:
df2.join(df1.groupby('country')['average'].mean(), on='country')
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.