之前提到了matrix。。见https://www.jianshu.com/p/a7e298044746
GPL570 <- getGEO("GPL570",destdir = ".")
可能是指针那一步有问题所以是datatable是空的
那么,去geo网站直接下载对应的gpl
https://www.ncbi.nlm.nih.gov/geo/query/acc.cgi
(文件有点大,需要等等等……)
Anno570= read.table("GPL570-55999.txt",sep="\t",quote="",as.is=TRUE,header = TRUE)
#这里又卡了一会子,发现quote=""不能少。。。
提取出gene symbol,entrezid
probe-symbol-entrez
接着,转换成symbol做行名的matrix,完成!
需要做以下几步:
- symbol 提取 /// 之前的那一个
- 合并重复的symbol
关键代码如下
sym=dfbone2$symbol
sym2=vector(length=54675)
for(i in 1:54675){
sym2[i]=strsplit(sym[i],split=' /// ')[[1]][1]
}#取了前一个symbol #45782 8893无symbol
#合并重复的symbol——求和
dfbone5=aggregate(dfbone4[,2:11],by=list(symbol=dfbone4$symbol),FUN="sum")#22880
rownames(dfbone5)=dfbone5$symbol
大功告成
网友评论