全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 R语言论坛
1583 0
2021-02-18
大家好,小白最近在做用R语言合并GEO数据下载的单个测序文件成矩阵,

在输入命令outTab=outTab[,seq(1,ncol(outTab),2)]时报错

Error in seq.default(1, ncol(outTab), 2) : wrong sign in 'by' argument,请问是啥意思啊?

谢谢大家~

全部命令如下:

library(limma)     #引用包

geneCol=2          #基因名称列号

expCol=6           #表达数据列号

setwd("C:\\Users\\Administrator\\Desktop\\asthmadata")   #设置工作目录



#读取目录下的文件

files=dir()

files=grep(".txt$",files,value=T)



geneList=list()

expList=list()

for(i in files){

        if(i=="expMatrix.txt"){

                  next

        }

        #读取文件,并对输入文件整理

        sampleName=i

        sampleName=gsub("\\.txt","",sampleName)

        rt=read.table(i,sep="\t",header=T,check.names=F)

        rt=rt[,c(geneCol,expCol,expCol)]

        rt=as.matrix(rt)

        rownames(rt)=rt[,1]

        exp=rt[,2:ncol(rt)]

        rowNames=rownames(exp)

        colNames=colnames(exp)

        dimnames=list(rowNames,colNames)

        data=matrix(as.numeric(as.matrix(exp)),nrow=nrow(exp),dimnames=dimnames)

        data=avereps(data)

        colnames(data)[1]=sampleName

        geneList[[sampleName]]=row.names(data)

        expList[[sampleName]]=data

}



#数据合并

interGenes=Reduce(intersect,geneList)

outTab=data.frame()

count=0

for(j in names(expList)){

        count=count+1

        matrix=expList[[j]]

        if(count==1){

                  outTab=matrix[interGenes,]

        }else{

                  outTab=cbind(outTab,matrix[interGenes,])

        }

}



#输出结果表格

outTab=outTab[seq(1,ncol(outTab),2)] ##这里出错

out=cbind(ID=row.names(outTab),outTab)

write.table(out,file="expMatrix.txt",sep="\t",quote=F,row.names=F)



outTab=outTab[seq(ncol(outTab),1,2)]







附件里是读取文件

附件列表
QQ截图20210218112029.png

原图尺寸 93.22 KB

QQ截图20210218112029.png

asthmadata.rar

大小:659.79 KB

 马上下载

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群