所以我仍然是R newb所以要温柔;) 我基本上应该能够解决这个问题,但我认为挫折已经开始了。 我希望使用write.table简单地将三列写入文件(足够简单)但我也希望它通过“\ t”分隔符附加,因此我的结果文件是制表符分隔的txt文件。 我附加了我的代码,它工作正常,但它们通过行附加,所以我希望能够解决这个问题。任何指针都会很棒!
干杯
for(num in 0:10){
input<-paste("C:\\Users\\Desktop\\non-viewpoint 20-2-14\\HMEC(p9)\\Exp*_HMEC(p9)-IP",num,".txt",sep="")
files<-Sys.glob(input)
outfile<-paste("C:\\Users\\Desktop\\non-viewpoint 20-2-14\\exps_HMEC(p9)-IP",num,".txt",sep="")
exp1<-read.table(files[1],header=TRUE,sep="\t")
e1<-exp1[grep("9", exp1$Chromosome, invert=TRUE), ]
write.table(e1$Probe,row.names=FALSE,col.names=FALSE,quote=FALSE,append=TRUE,outfile)
exp2<-read.table(files[2],header=TRUE,sep="\t")
e2<-exp2[grep("9", exp2$Chromosome, invert=TRUE), ]
write.table(e2$Probe,row.names=FALSE,col.names=FALSE,quote=FALSE,append=TRUE,outfile)
exp3<-read.table(files[3],header=TRUE,sep="\t")
e3<-exp3[grep("9", exp3$Chromosome, invert=TRUE), ]
write.table(e3$Probe,row.names=FALSE,col.names=FALSE,quote=FALSE,append=TRUE,outfile)
}
答案 0 :(得分:1)
将您要输出的所有内容放入单个data.frame
,然后将write.table()
与sep="\t"
参数一起使用:
for(num in 0:10){
input<-paste("C:\\Users\\Desktop\\non-viewpoint 20-2-14\\HMEC(p9)\\Exp*_HMEC(p9)-IP",num,".txt",sep="")
files<-Sys.glob(input)
outfile<-paste("C:\\Users\\Desktop\\non-viewpoint 20-2-14\\exps_HMEC(p9)-IP",num,".txt",sep="")
exp1<-read.table(files[1],header=TRUE,sep="\t")
exp2<-read.table(files[2],header=TRUE,sep="\t")
exp3<-read.table(files[3],header=TRUE,sep="\t")
e1<-exp1[grep("9", exp1$Chromosome, invert=TRUE), ]
e2<-exp2[grep("9", exp2$Chromosome, invert=TRUE), ]
e3<-exp3[grep("9", exp3$Chromosome, invert=TRUE), ]
tableData <- cbind(e1$Probe, e2$Probe, e3$Probe)
write.table(tableData,file=outfile,sep="\t",row.names=FALSE,col.names=FALSE,quote=FALSE,append=TRUE)
}
答案 1 :(得分:0)
对Mason DeCamillis这么认真! 这是适合我的解决方案...... 它可能看起来不漂亮,但它确实有效:)再次感谢!
for(num in 0:10){
input<-paste("C:\\Users\\Desktop\\non-viewpoint 20-2-14\\HMEC(p9)\\Exp*_HMEC(p9)-IP",num,".txt",sep="")
files<-Sys.glob(input)
outfile<-paste("C:\\Users\\Desktop\\non-viewpoint 20-2-14\\exps_HMEC(p9)-IP",num,".txt",sep="")
exp1<-read.table(files[1],header=TRUE,sep="\t")
e1<-exp1[grep("9", exp1$Chromosome, invert=TRUE), ]
exp2<-read.table(files[2],header=TRUE,sep="\t")
e2<-exp2[grep("9", exp2$Chromosome, invert=TRUE), ]
exp3<-read.table(files[3],header=TRUE,sep="\t")
e3<-exp3[grep("9", exp3$Chromosome, invert=TRUE), ]
e1$id <- 1:nrow(e1)
e1<-cbind(e1,e1$id)
e2$id <- 1:nrow(e2)
e2<-cbind(e2,e2$id)
e3$id <- 1:nrow(e3)
e3<-cbind(e3,e3$id)
tableData <- merge(e1, e2, by="id", all=TRUE)
tableData <- merge(tableData, e3, by="id", all=TRUE)
ire<-data.frame(tableData$Probe.x)
eng<-data.frame(tableData$Probe.y)
fra<-data.frame(tableData$Probe)
jondata<-cbind(ire,eng,fra)
write.table(jondata,row.names=FALSE,col.names=FALSE,quote=FALSE,append=TRUE,outfile,sep="\t")
}