Skip to content

if then in R versus SAS

4 messages · ramoss, Marc Schwartz, Daniel Nordlund +1 more

#
On Aug 24, 2012, at 1:03 PM, ramoss <ramine.mossadegh at finra.org> wrote:

            
See ?ifelse and ?Logic, both of which are covered in "An Introduction to R" (http://cran.r-project.org/manuals.html).

  MOC <- ifelse((otype == 'M') & (ocond == '1') & (entry == 'a.Prop'), 1, 0)


You might also want to think about getting a copy of:

R for SAS and SPSS Users
Robert Muenchen
http://www.amazon.com/SAS-SPSS-Users-Statistics-Computing/dp/0387094172

Regards,

Marc Schwartz
#
I would second Mark's recommendation to carefully work through "An Introduction to R" and to get Robert Muenchen's book.  If the variables otype, ocond, and entry are scalar values, then the translation from SAS to R is very straight-forward:

if(otype=='M' && ocond=='1' && entry=='a.Prop') MOC <- 1 else MOC <- 0


Hope this is helpful,

Dan

Daniel Nordlund
Bothell, WA USA
2 days later
#
On Aug 24, 2012, at 21:51 , Daniel Nordlund wrote:

            
It's almost certain that they are not scalar though, so Marc's idea is likely right. 

Just let me add that ifelse() is not actually needed:

MOC <- as.numeric((otype == 'M') & (ocond == '1') & (entry == 'a.Prop'))

will do. (And the as.numeric bit is only to convert FALSE/TRUE to 0/1)