Python - Как объединить в DF по идентификатору, а также получить значения NaN - PullRequest
0 голосов
/ 05 октября 2019

Python - Как объединить два df по идентификатору, а также получить значения NaN

Я объединяю два df по идентификаторам. Проблема в том, что есть значения без идентификатора "NaN", но мне все еще нужно учитывать их.


как получить эти значения также при объединении


Я пытаюсьприсвойте им значение типа «12345», чтобы можно было выводить данные, не уверенный, что есть лучший вариант.

# Dataframe

g_spend = 

    id   Campaign_ID   Month  campaignid   cost    
0 1664745    154      2019|08  31664745   $34.3    
1 NaN      2019|08  31664745   $34.3    65.0
2 1664745    154      2019|08  31664745   $34.3    
3            154      2019|08  31664745   $34.3    
4 1664745    154      2019|08  31664745   $34.3    



cw =

   id           leads
0 1664745       65.0   
2 1664745      65.0
4 1664745      65.0

работает, но пропускает значения NaN и пустые поля

#my attempt

grouped_cw= cw.groupby(["campaignid"]).sum()
grouped_cw = pd.DataFrame(grouped_cw)

g_spend = g_spend.merge(grouped_cw, left_on='campaignid', right_index=True)


Желаемый выход

    id   Campaign_ID   Month  campaignid   cost    leads
0 1664745    154      2019|08  31664745   $34.3    65.0
1            NaN      2019|08  31664745   $34.3     65.0
2 1664745    154      2019|08  31664745   $34.3    65.0
3            154      2019|08  31664745   $34.3    65.0
4 1664745    154      2019|08  31664745   $34.3    65.0

...