У меня есть датафрейм с моими выбранными экзонными кординатами (dataframe = мои экзоны) и gtf dataframe (dataframe = gtf). Я пытаюсь сначала найти мои экзоны из gft, а затем однажды обнаружил, что пытался извлечь предыдущий экзон из gft как вывод. я привел пример ниже.
dataframe мои экзоны
start end exon_num width gene geneid_exon_num_start_end
61178981 61179171 2 191 AHSA2 AHSA2 -2-61178981-61179171
243613671 243613739 7 69 AKT3 AKT3 -7-243613671-243613739
36952886 36953296 3 411 AATF AATF -3-36952886-36953296
датафрейм GTF
start end exon_num width gene geneid_exon_num_start_end
61177472 61177618 1 147 AHSA2 AHSA2 -1-61177472-61177618
61178668 61179171 1 504 AHSA2 AHSA2 -1-61178668-61179171
61185526 61185618 1 93 AHSA2 AHSA2 -1-61185526-61185618
61178981 61179171 2 191 AHSA2 AHSA2 -2-61178981-61179171
36950214 36950405 2 192 AATF AATF -2-36950214-36950405
37056601 37056858 2 258 AATF AATF -2-37056601-37056858
36952886 36953296 3 411 AATF AATF -3-36952886-36953296
19958014 19958571 4 558 AATF AATF -4-19958014-19958571
вывод данных с фрейма
start end exon_num width gene geneid_exon_num_start_end
61177472 61177618 1 147 AHSA2 AHSA2 -1-61177472-61177618
36950214 36950405 2 192 AATF AATF -2-36950214-36950405
Я использую это для того, чтобы найти мои экзоны из gtf, как только найден, возьмите строку выше, чтобы получить предыдущий экзон.
previous_exon=gft[which(gtf$geneid_exon_num_start_end %in% myexons$geneid_exon_num_start_end)+c(-1),]
проблема в том, что я даю (т. Е. Всего на одну строку выше).
start end exon_num width gene geneid_exon_num_start_end
61185526 61185618 1 93 AHSA2 AHSA2 -1-61185526-61185618
37056601 37056858 2 258 AATF AATF -2-37056601-37056858
Я не хочу этого. Если вы видите, что есть несколько предыдущих экзонов с разными кординатами, поэтому я хочу, чтобы строка, в которой конечный кординат предыдущего экзона был меньше, чем начало моего экзона (см. требуемый вывод). У меня огромный массив данных, поэтому я не могу выполнять его по одному, поэтому мне нужна помощь, чтобы сохранить этот трек и получить вывод.