[R] substitute values

Mark Wardle mark at wardle.org
Tue Apr 3 10:44:50 CEST 2007


Sergio Della Franca wrote:
> Dear R-Helpers,
> 
> I have the following data set(y):
> 
> Years   Products
> 1          10
> 2          25
> 3          40
> 4          NA
> 5          35
> <NA>   23
> 6         NA
> 7         67
> 8         NA
> 
> I want to create a new column into my dataset(y) under the following
> conditions:
> if years =NA and products >20 then new column=1 else new column=0;
> to obtain the following results:
> 
> Years   Products New Column
> 1          10          0
> 2          25          0
> 3          40          0
> 4          NA         0
> 5          35          0
> <NA>   23          1
> 6         NA          0
> 7         67           0
> 8         NA          0
> 

How about using ifelse():
year = c(1,2,3,4,5,NA,6,7,8)
products = c(10,25,40,NA,35,23,NA,67,NA)
ifelse(is.na(year) & products>20,1,0)


=>

[1] 0 0 0 0 0 1 0 0 0


Mark

-- 
Dr. Mark Wardle
Specialist registrar, Neurology
Cardiff, UK



More information about the R-help mailing list