Извлечь все данные, содержащиеся в структуре, импортированной из библиотеки BSgenome - PullRequest
0 голосов
/ 13 июня 2018

Я извлек определенные данные, представляющие интерес, из библиотеки BSgenome, но мне не удалось экспортировать данные из ее структуры.

Вот код

library(BSgenome.Hsapiens.UCSC.hg38)

genome = BSgenome.Hsapiens.UCSC.hg38
chr1 = genome$chr1
p1 = "ATC"
chrom1 = matchPattern(p1, chr1) 

Я хочу сохранитьданные chrom1 , я пробовал через write.table , но не работает.

, если я печатаю c hrom1[1:10], это дает мне следующий результат

     start   end width    
 [1] 10546 10548     3 [ATC]    
 [2] 11146 11148     3 [ATC]    
 [3] 11161 11163     3 [ATC]    
 [4] 11577 11579     3 [ATC]   
 [5] 11598 11600     3 [ATC]    
 [6] 11847 11849     3 [ATC]    
 [7] 12002 12004     3 [ATC]    
 [8] 12119 12121     3 [ATC]    
 [9] 12202 12204     3 [ATC]    
[10] 12247 12249     3 [ATC]

Как мудрый

Кто-нибудь может мне помочь?

Ответы [ 2 ]

0 голосов
/ 13 июня 2018

Вы можете позвонить start, end и width соответственно.

df <- data.frame(start = start(chrom1), end = end(chrom1), width = width(chrom1))
#  start   end width
#1 10546 10548     3
#2 11146 11148     3
#3 11161 11163     3
#4 11577 11579     3
#5 11598 11600     3
#6 11847 11849     3

Я не уверен, работает ли это для всех XStringsViews классов, но вы можете попробовать добавить столбец ATC, используя:

df <- data.frame(start = start(chrom1), end = end(chrom1), width = width(chrom1), p1=BSgenome::as.data.frame(chrom1)[,1])
#  start   end width  p1
#1 10546 10548     3 ATC
#2 11146 11148     3 ATC
#3 11161 11163     3 ATC
# ...
0 голосов
/ 13 июня 2018

Преобразовать в data.frame :

as.data.frame(chrom1@ranges)
#    start   end width
# 1  10546 10548     3
# 2  11146 11148     3
# 3  11161 11163     3
# ...

Как указано @MartinMorgan в комментариях, мы можем избежать прямого доступа к слотам, используя method :: as () функция:

as.data.frame(as(chrom1, "IRanges"))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...