我有两个文件要合并。第一个文件有几个变量;两个重要的是ID和END。ID不是一行唯一的;多个行可以具有相同的id。第二个文件有两个变量,id和START。在这个文件中,每个id都是唯一的——没有具有相同id的行。
我想创建第三个文件。我想保留第一个文件中ID与第二个文件中的一个ID匹配的行,其中第一个文件的END小于第二个档案的START。我只想保留第一个文件中符合条件的行。我不想保留第二个文件中的START值。我也不想保留与ID不匹配且不具有END<启动。
FILE 1
ID END
1 333
2 555
3 789
4 234
File 2
ID START
1 432
2 777
3 444
New FILE
ID END
1 333
2 555
感谢您的帮助。
假设file3是您想要的最后一个文件:
file3 = merge(file1, file2, by = "ID")
file3 = file3[file3$END < file3$START, c("ID","END")]
假设文件1有df1
,文件2有df2
,并且您想为最后一个输出设置df3
。
rows <- df1$Id %in% df2$ID
df3 <- df1[rows]
df3 <- df1[df1$End > df2$End]