Thank you, That was the problem. I know about using the extra brackets but in the R help manual it doesn't use brackets so I thought maybe R is different. However, yes indeed, it was assigning the 'lgAB to 4'. I'm just starting to really learn R. Cheers,
Paul PS thanks to the Patrick Burns who gave me the link to S poetry. PPS What is the "sturges" doing in the code ? is it like a goto? < freq_AB <- hist(lgAB, type = "o", plot = FALSE, breaks = if (any(abs(lgAB) > 4)) "Sturges" else br) > Research Techinician Mass Spectrometry o The / o Scripps \ o Research / o Institute -----Original Message----- From: Rolf Turner [mailto:[EMAIL PROTECTED] Sent: Tuesday, June 13, 2006 1:14 PM To: [EMAIL PROTECTED]; [email protected] Subject: Re: [R] if syntax error :( H. Paul Benton wrote: > Umm sorry to bother everyone again but I'm having trouble with my if > statement. I come from a perl background so that's probably my problem! :) > So here is my code: > > if (any(lgAB>4) | any(lgAB<-4)){ > freq_AB<-hist(lgAB, type="o", plot=F) > else > freq_AB<-hist(lgAB, breaks=br,type ="o", plot=F) > } > > And I get > > source("E:/R/GMDA-1.1.R") > Error in parse(file, n = -1, NULL, "?") : syntax error at > 11: freq_AB<-hist(lgAB, type="o", plot=F) > 12: else > > No-one yet has pointed out the following problem, which, while not be a syntax error as such, will cause you headaches: if (any(lgAB>4) | any(lgAB<-4)){ ^^^^^^^ This assigns the value 4 to lgAB (which is presumably NOT what you want to do). You want ``any(lgAB < -4)''. General rule: Put in spaces around operators --- it makes the code (much) more readable and avoids unintended consequences. Another infelicity in your code: ``plot=F''. Use ``plot=FALSE''. (Note that the symbols ``F'' and ``T'' are assignable, *unlike* ``TRUE'' and ``FALSE''.) cheers, Rolf Turner [EMAIL PROTECTED] ______________________________________________ [email protected] mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html
