Это относится к SettingWithCopyWarning , также в пандах у нас обычно есть несколько путей, а не для цикла для этого типа дела
np.where
final_merge['user_ID']=np.where(final_merge['user_x']=='nan',final_merge['user_y'],final_merge['user_x'])
Или fillna
, если nan
- это np.nan, если нет - final_merge['user_x'].replace('nan',np.nan, inplace=True)
final_merge['user_ID']=final_merge['user_x'].fillna(final_merge['user_y'])
Или mask
final_merge['user_ID']=final_merge['user_x'].mask(final_merge['user_x']=='nan',final_merge['user_y'])