получить предыдущий экзон из gtf file- # R программирования: - PullRequest
0 голосов
/ 07 мая 2018

У меня есть датафрейм с моими выбранными экзонными кординатами (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

Я не хочу этого. Если вы видите, что есть несколько предыдущих экзонов с разными кординатами, поэтому я хочу, чтобы строка, в которой конечный кординат предыдущего экзона был меньше, чем начало моего экзона (см. требуемый вывод). У меня огромный массив данных, поэтому я не могу выполнять его по одному, поэтому мне нужна помощь, чтобы сохранить этот трек и получить вывод.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...