我尝试用两个id连接两个 Dataframe 。
假设我们有以下 Dataframe :
Dataframe 1,具有以下字段:date1、id1、col1、col2等... Dataframe 2,具有以下字段:日期2、标识2、列1、列2等。
我尝试了以下方法:
pd.merge(dataframe1, dataframe2, left_on = ['date1', 'id1'], right_on = ['date2', 'id2'])
但是我得到了重复的行..,我不知道如何解决它。
请记住以下几点:字段date1和date2由年份给出;并且日期1比日期2具有更多年。
我怎样才能解开这个密码..?
无论你需要什么,请回答。
最好的问候。
PD:
这就是ID中的 Dataframe 。
dataframe1 = pd.DataFrame()
date1 = [2014,2014,2014,2015,2015,2015,2016,2016,2016]
id1 = [2,3,1,4,2,1,2,2,1]
dataframe2 = pd.DataFrame()
date2 = [2015,2015,2015,2016,2016,2016,2017,2017,2018,2019,2020]
id2 = [2,2,1,4,2,2,34,2,1,3,3]
它们有更多的字段,但它们都是不同的,并被重复项所消除。
1条答案
按热度按时间uajslkp61#
你可以在pd.merge()函数中使用
how
参数来指定如何处理重复项。2 how参数有四个选项:Inner
联接、left
联接、right
联接和outer
联接。下面是一个链接,您可以在其中找到联接的定义,以便正确应用其中一个联接:JOINS PANDAS