我需要一个使用循环的命令,以便在时间使用两个不同的变量。
遵循这个逻辑:(这个命令不起作用,只是一个例子):
for t1&t2 in 62&64 64&68 70&80; do
echo "Horse $t1 and $t2" >> File.out
done
,最终结果将是
File.out
Horse 62 and 64
Horse 64 and 68
Horse 70 and 80
我想使用它,更具体地说,使用这样的R程序:
for t1&t2 in 62&64 64&68 70&80; do
R -q -e "library(pastecs);d <- read.table('ageecent.txt', header = F,sep=' ');
vart1 =var(d[,$t1]); vres_t1=vart1*0.75;
va_t1=(vart1*0.25);vart2=var(d[,$t2]); vres_t2=vart2*0.75;
va_t2=(vart2*0.25); cor=cor(d[,$t1],d[,$t2]);
write.table(va_t1,'va_t1', row.names=F, col.names=F);
write.table(vres_t1,'vres_t1',row.names=F,col.names=F);
write.table(va_t2,'va_t2',row.names=F,col.names=F);
write.table(vres_t2,'vres_t2',row.names=F,col.names=F);
write.table(cor,'cor',row.names=F,col.names=F)"
done
我需要在哪里使用两个不同的变量t1和t2来定义我的主文件&#34; ageecent.txt&#34;的列,必须进行分析。 感谢您的关注和支持。
答案 0 :(得分:1)
我会将while
循环与read
结合使用,而不是for
循环:
echo -e '62 64\n64 68\n70 80' |
while read -r t1 t2; do
echo "Horse $t1 and $t2"
done >> File.out
请注意,我还将重定向移出循环,这样效率更高。