下载所有芯片探针序列并且写成fasta文件

2018-12-25 16:53:53 浏览数 (1)

选择在GEO官网的GPL平台下载 : https://www.ncbi.nlm.nih.gov/geo/query/acc.cgi?acc=GPL21827

代码语言:javascript复制
rm(list = ls())  ## 魔幻操作,一键清空~
options(stringsAsFactors = F)
# 注意查看下载文件的大小,检查数据 
f='GPL21827_eSet.Rdata'

library(GEOquery)
# 这个包需要注意两个配置,一般来说自动化的配置是足够的。
#Setting options('download.file.method.GEOquery'='auto')
#Setting options('GEOquery.inmemory.gpl'=FALSE)
if(!file.exists(f)){
  gset <- getGEO('GPL21827', destdir="." )       ## 平台文件
  save(gset,file=f)   ## 保存到本地
}
load('GPL21827_eSet.Rdata')  ## 载入数据
class(gset)
length(gset)
gset 
colnames(Table(gset))
probe2seq=Table(gset)[,c(1,4)]

可以看到探针ID及其对应的序列已经成为了一个数据框啦。

只需要简单的技巧就可以写成fasta文件:

代码语言:javascript复制
all_recs=paste(apply(probe2seq,1,function(x) paste0('>',x[1],'n',x[2])),collapse = 'n')
temp <- tempfile()  ## 编程技巧,把变量写入临时文件~
temp
write(all_recs, temp)

理论是这个教程适用于所有在GEO数据库有GPL平台信息的芯片。

之所以写出到fastq文件,是因为它可以拿去走比对流程。

其它探针序列没有什么区别,当然,也可以去芯片官网下载探针序列。

0 人点赞