Ery Arias-Castro
2012-Jan-22 02:56 UTC
[R] if/else statement without curly brackets gives a problem
Hello, This example seems strange to me:> if (2 > 3) print('Yes'); else print('No')Error: unexpected 'else' in " else"> {if (2 > 3) print('Yes'); else print('No')}Error: unexpected 'else' in "{if (2 > 3) print('Yes'); else"> {+ if (2 > 3) print('no') + else print('yes') + } [1] "yes" Any enlightening comments? Ery
jim holtman
2012-Jan-22 03:17 UTC
[R] if/else statement without curly brackets gives a problem
Don't use the ';'> if (2 > 3) print('Yes'); else print('No')Error: unexpected 'else' in " else" No suitable frames for recover()> if (2 > 3) print('Yes') else print('No')[1] "No">'else' is part of the 'if'. The ';' implies the start of a new statement. You do not need the ';' when writing R; you must be coming from a C background. On Sat, Jan 21, 2012 at 9:56 PM, Ery Arias-Castro <eariasca at ucsd.edu> wrote:> Hello, > > This example seems strange to me: > >> if (2 > 3) print('Yes'); else print('No') > Error: unexpected 'else' in " else" > >> {if (2 > 3) print('Yes'); else print('No')} > Error: unexpected 'else' in "{if (2 > 3) print('Yes'); else" > >> { > + ? ? ? if (2 > 3) print('no') > + ? ? ? else print('yes') > + } > [1] "yes" > > > Any enlightening comments? > > Ery > > ______________________________________________ > R-help at 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.-- Jim Holtman Data Munger Guru What is the problem that you are trying to solve? Tell me what you want to do, not how you want to do it.
Florent D.
2012-Jan-22 03:22 UTC
[R] if/else statement without curly brackets gives a problem
It is well explained here http://www.burns-stat.com/pages/Tutor/R_inferno.pdf page 67. On Sat, Jan 21, 2012 at 9:56 PM, Ery Arias-Castro <eariasca@ucsd.edu> wrote:> Hello, > > This example seems strange to me: > > > if (2 > 3) print('Yes'); else print('No') > Error: unexpected 'else' in " else" > > > {if (2 > 3) print('Yes'); else print('No')} > Error: unexpected 'else' in "{if (2 > 3) print('Yes'); else" > > > { > + if (2 > 3) print('no') > + else print('yes') > + } > [1] "yes" > > > Any enlightening comments? > > Ery > > ______________________________________________ > 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. >[[alternative HTML version deleted]]