I have two dataframes such as:
gene_bacteriadf
seqnames ranges strand
[1] scaffold_1 1-50 -
[2] scaffold_1 60-100 -
[3] scaffold_1 200-350 -
[4] scaffold_2 1550-1650 +
[5] scaffold_2 1900-2300 -
[6] scaffold_5 250-255 +`
and overlapdf
seqnames ranges strand hit with_busco with_bacteria Overlap_with
scaffold_2 1550-1650 + | TRUE 101 201 101 0.502487562189055
and the idea is simply to remove the matching in columns seqnames, ranges and strand. I tried;
genes_bacteriadf[!(alist(genes_bacteriadf$seqnames, genes_bacteriadf$start, genes_bacteriaf$end, genes_bacteriadf$width) %in% (alistoverlapsdf$seqnames,overlapsdf$start,overlapsdf$end,overlapsdf$width), ]
But id does not work.
Here in the exemple scaffold2 1550 165à does match so I should get a new df such as:
seqnames ranges strand
[1] scaffold_1 1-50 -
[2] scaffold_1 60-100 -
[3] scaffold_1 200-350 -
[5] scaffold_2 1900-2300 -
[6] scaffold_5 250-255 +
Does someone have an idea?