> -----Original Message-----
> From: r-help-boun...@r-project.org [mailto:r-help-bounces@r-
> project.org] On Behalf Of Yanyuan Zhu
> Sent: Thursday, December 20, 2012 7:48 AM
> To: r-help@r-project.org
> Subject: [R] an entry level (stupid) question
> 
> Hello all, i'm a newbie to R and now I get stuck by the question, would
> anybody help me please?
> 
> Suppose, I got the following
> 
> > test <- data.frame(test1=c(c(0.00, 0.005, 0.01, 0.015, 0.02)))
> > test
>   test1
> 1 0.000
> 2 0.005
> 3 0.010
> 4 0.015
> 5 0.020
> 
> Now I want another column inside test, named test2
> for i=c(1:5), If test$test1[i] is 0, then the value of test$test2[i] is
> 1/test1[i]
> or else If test$test1[i] is not 0, then the value of test$test2[i] is
> 39
> 
> how should i programme in R to make it happen?
> 
> thanks a lot!
> 

You probably want to use the ifelse() function, but your description of the 
problem change zeros into  inf (i.e. infinity) and all other values into 39.  
Is that what you really want?


Dan

Daniel J. Nordlund
Washington State Department of Social and Health Services
Planning, Performance, and Accountability
Research and Data Analysis Division
Olympia, WA 98504-5204


______________________________________________
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.

Reply via email to