【发布时间】:2021-03-28 16:49:57
【问题描述】:
我目前正在尝试在 Linux“cartesius surfsara”环境中运行 bash 脚本和 R 脚本。该脚本的目标是了解大量文件的内容。我查看文件的结构、特定列的摘要,并尝试绘制它们。绘图是我的问题所在,我无法生成唯一的绘图名称。因此,生成的地块相互重叠,整个过程只生成了两个地块。任何有关此问题的帮助将不胜感激!
这是我调用 R 脚本的 bash 脚本
#!/bin/bash
#SBATCH -N 1
#SBATCH -t 2:10:00
module load 2019
module load R
#copy files
cp $HOME/Donders/Brain_volumes/*.gz $TMPDIR
cp $HOME/Donders/plotting.R $TMPDIR
#go into scratch
cd $TMPDIR
ncors=15
for file in *.gz; do
((k=k%ncors)); ((k++==0)) && wait
{
Rscript plotting.R $file --no-save --slave --quiet
} &
done
wait
#copy files back to homedir
cp *.csv $HOME
cp *.png $HOME
这是我绘制多个文件内容的 R 脚本,但是,在循环结束时只生成了 2 个图,因为我不生成唯一名称并且它们彼此重叠。
#load libraries
library("R.utils")
library("data.table")
A=commandArgs(trailingOnly=T)[1]
#read in data
data <- read.table(A, header = TRUE)
b <- as.numeric(data$beta)
se <- as.numeric(data$se)
str(data)
summary_dat <- summary(data)
png(filename = "b.png",
width = 640, height = 480, units = "px", pointsize = 12,
bg = "white", res = NA,
type = c("cairo", "cairo-png", "Xlib", "quartz"))
hist(b)
dev.off()
png(filename = "se.png",
width = 640, height = 480, units = "px", pointsize = 12,
bg = "white", res = NA,
type = c("cairo", "cairo-png", "Xlib", "quartz"))
hist(se)
dev.off()
write.csv(summary_dat, "summary.csv")
【问题讨论】: