[英]Python: join/merge dataframes with overlapping but different date index
我有一系列数据框,其中包含来自过去二十年来在重叠时间运行的一系列雨量计的降雨数据。 例如,第一个工作在2001年至2004年之间,然后第二个工作在2003年至2008年之间,第三个工作在2007年至2015年之间。它们都以日期作为索引,但是我不知道如何合并它们,同时保留所有索引我使用以下我认为可行的方法:
RG1_2 = RG1.merge(RG2, left_index=True, right_index=True)
我曾期望这会产生一个具有2001年和2008年索引的数据框,其中两列包含记录的数据。 相反,它从2003年返回到2008年,即第二个数据框的索引...有什么想法吗?
提前谢谢了!
我认为您应该尝试使用outer join
,默认合并是使用内部连接,因此看起来只有相关的值才可以连接您的情况。
RG1_2 = RG1.merge(RG2, left_index=True, right_index=True,how='outer')
而不是使用
RG1_2 = RG1.merge(RG2, left_index=True, right_index=True)
尝试以下方法:
RG1_2 = RG1.merge(RG2, on='join_key',how='outer',left_index=True, right_index=True)
这会将索引合并在一起,现在返回2003年到2008年。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.