如何在R中迭代打印输出图像

时间:2014-05-30 15:05:23

标签: r image output iteration

我有一大堆输入文件,我希望在其上运行相同的功能,并为每个具有相同文件名的文件获取输出图像。我正在编写一个R脚本以在命令行上运行。

这就是我到目前为止......它只为我的一个输入文件创建一个名为“$ image”的文件,就是这样。我究竟做错了什么?感谢任何帮助,谢谢!

library(seqLogo)

files <- list.files(path="/path/to/all/files", pattern="*.pwm", full.names=T, recursive=FALSE)

for (i in files){
    motif <- read.table(i, header=F, sep="\t")
    pwmot <- makePWM(motif)
    png("$image.png", width=1000)
    seqLogo(pwmot)
    dev.off()
}

1 个答案:

答案 0 :(得分:1)

如果你这样做

png("image%03d.png", width=1000)
for (i in files){
    motif <- read.table(i, header=F, sep="\t")
    pwmot <- makePWM(motif)    
    seqLogo(pwmot)
}
dev.off()

R将依次标记图像&#34; image001.png&#34;,&#34; image002.png&#34;等。当您拨打dev.off()并重新开始时,编号将停止下一个png()电话。您可以使用?sprintf

中记录的格式字符串更改格式