合并数据集并对齐2个独立的时间序列

问题描述

我将两个古气候数据集组合成一个,用于回归模型。每个数据集的时间范围为0-802kys。

但是,其中一组在600kyrs(1)之后一年跳过。当我将所有数据放到一帧中时,缺少时间的时间序列会更短,不会与另一帧对齐并重新启动。我追求的是使不完整的时间序列具有NA值,因此我可以省略这些行。

即当v2 = 601(参见图片1)时,我想分别读取NA,601、3.97

我的合并代码是:

df_new <- cbind(Df1$Age,Df2$Age,Df1$Benthic,Df2$Deut)

解决方法

仅合并data.frames就足够了,因为两者似乎都具有匹配的键。如果没有匹配的键,您只需确保创建了其他行。

merge(Df1,Df2,all.x = T,all.y =T)

应该为您工作。这将是基本的R解决方案。

all.x / all.y执行以下操作:

逻辑;如果为TRUE,则会将多余的行添加到输出中,对于x中没有与y中匹配的行的每一行。这些行在通常填充y值的列中将具有NA。默认值为FALSE,因此输出中仅包含同时包含x和y数据的行。

有关如何合并data.frames的信息: How to join (merge) data frames (inner,outer,left,right)