This is confusing. try this.
number.runs <- 1 if (number.runs == 1) run.number <- 1 if (number.runs > 1) { for (i in 1:number.runs) { print(i) } } perhaps the easiest way to print 1 and then 1 2 would be for (i in 1:number.runs) { print(i) } but i'm not sure that is what you want. i'm also not sure what the if(number.runs>1) is doing inside your for loop -- the for loop is only executed under that condition. On 10/2/07, Matthew Keller <[EMAIL PROTECTED]> wrote: > Hi all, > > This question involves using a "for" loop to make a "decision" in a script. > > I've written a rather intricate script, and near the start of it, I > want it either to do a loop (if a variable called "number.runs" > 1) > or not do a loop (if "number.runs" is 1). This is probably trivial but > I can't figure it out. Here's a self-contained example that gets at > the gist of what I'm looking for: > > number.runs <- 1 #try it with number.runs <- 2 as well > if (number.runs==1) run.number <- 1 > if (number.runs>1) for(run.number in 1:number.runs){ > print(number.runs) #in the real script, lots happens in here > if(number.runs>1) } > > I'd like the following to print "1" if number.runs==1, and print "1" > and then "2" if number.runs==2. > > But the above syntax does not work. R returns a Syntax Error. This > probably has to do with the order of operations? > > Then I thought I would get tricky and use an eval(parse()) statement: > > if (number.runs==1) cat("run.number <- 1",file="temp") > if (number.runs>1) cat("for(run.number in 1:number.runs){",file="temp") > eval(parse(file="temp")) > print(number.runs) #in the real script, lots happens in here > if(number.runs>1) cat("}",file="temp") > eval(parse(file="temp")) > > But R returns the following error: > > Error in parse(file, n, text, prompt, srcfile, encoding) : > temp: syntax error, unexpected END_OF_INPUT, expecting '\n' or ';' or > '}' at > 2: for(run.number in 1:number.runs){ > > > -- > Matthew C Keller > Postdoctoral Fellow > Virginia Institute for Psychiatric and Behavioral Genetics > > ______________________________________________ > R-help@r-project.org mailing list > https://stat.ethz.ch/mailman/listinfo/r-help > PLEASE do read the posting guide http://www.R-project.org/posting-guide.html > and provide commented, minimal, self-contained, reproducible code. > -- Tim Calkins 0406 753 997 ______________________________________________ R-help@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.