在R中创建pdf时使用粘贴

时间:2014-03-13 15:28:45

标签: r pdf paste

我想在使用paste函数保存文件时使用R中的pdf函数,但是我收到此错误:

  

文件名太长了pdf()

我该怎么做才能克服这个问题?

这是我的剧本:

for (chromo in 1:22){

read.table(paste("locfile_less_chrloc_file_chr", chromo, ".txt.txt" , sep=""))-> chr

t(chr) -> chr_t

as.matrix(chr_t) -> chr_t_m

length(chr_t_m) -> len

pdf(paste("chr",chromo,".pdf", sep=""))
plot(1:len,chr_t_m, type= "l")
dev.off()

}

所以,我的猜测是pdf函数不允许使用paste函数。这是对的吗?

提前致谢。

1 个答案:

答案 0 :(得分:3)

为什么不将pdf文件名存储在额外的对象中?

chr<-"a"
pdfname<-paste0("chr",chr,".pdf")
pdf(file=pdfname)

这直接适用于: pdf(file=paste0("chr",chr,".pdf"))

要获得更短的文件名,请尝试: pdf(file=paste0("chr",names(chr)[1],".pdf"))

将1替换为适当的列号。