首页 > 解决方案 > 在python中合并2个数据框

问题描述

我正在将 R 代码翻译成 python。他们正在合并 2 个数据集:

Df1 with columnName {Product, trade, volume,date,address,adm2}
Df2 with columnName {Product, trade, volume, searchText}

在 R 中,他们使用了以下代码:

Df2<-read_csv(here("ProductSales2019.csv")) %>% mutate(year=2019) %>% 

left_join(Df1,by=c('Product','address',"volume")) %>% mutate(date=as.character(date))

我在 python 中尝试了同样的事情,代码如下:

Df2 = pd.merge(Df2, Df1, how="left", left_on=["Product","searchText","volume"],right_on=["Product","address","volume"])

请注意(address in Df1 = searchText in df2),具有相同的值但不同的列名,并且我将year列添加到Df2。我得到合并的结果没有任何错误,但我得到的date列合并Df2nan。而且我在 R 中获得的数据集的大小也与在 python 中不同。我做得对吗?

标签: pythonrpandasleft-joindata-science

解决方案


推荐阅读