У меня есть два набора данных. Один из них - это список генов, который показывает положение нуклеотидов каждого гена.
Например:
Gene Name Low Position Upper Position
Gene 1 1000 2000
Gene 2 5000 6000
Другой набор данных - это список полиморфизмов и их нуклеотидных позиций.
Например:
Position Gene Location
SNP 1 3000 NA
SNP 2 5500 NA
Я использовал функцию ifelse в R, чтобы отсортировать свой набор данных полиморфизмов по соответствующим генам (так что SNP 2 будет иметь Gene 2 в столбце Gene Location). Я использовал следующий код:
SampleGeneData$Gene.Name=as.character(SampleGeneData$Gene.Name)
SampleSNPData$Gene.Location=ifelse(sapply(SampleSNPData$Position,function(p) any(SampleGeneData$Low.Position<=p&SampleGeneData$High.Position>=p)),SampleGeneData$Gene.Name,"NO")
Мне было интересно, можно ли также определить местоположение гена как оба гена, между которыми находится SNP (таким образом, SNP 1 будет иметь некоторый выход для гена 1 и гена 2 или чего-то подобного). Могу ли я сделать это с помощью функции ifelse или мне придется использовать что-то еще?
SNP 1 would have some output of "Gene 1 and Gene 2"
? Можете ли вы показать ожидаемый результат? - person Ronak Shah   schedule 06.07.2020