代码语言:javascript复制选择在GEO官网的GPL平台下载 : https://www.ncbi.nlm.nih.gov/geo/query/acc.cgi?acc=GPL21827
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文件,是因为它可以拿去走比对流程。
其它探针序列没有什么区别,当然,也可以去芯片官网下载探针序列。