lundi 17 décembre 2018

Using if, if else to update values in one column based on values of another column in a tibble

if(ISSUES$VEHICLE_KM_READING <= 10000){
ISSUES$KMRANGE <- '10K'
} else if(ISSUES$VEHICLE_KM_READING <= 20000 & ISSUES$VEHICLE_KM_READING > 
10000){
  ISSUES$KMRANGE <- '20K'
} else if(ISSUES$VEHICLE_KM_READING <= 30000 & ISSUES$VEHICLE_KM_READING > 
20000){
  ISSUES$KMRANGE <- '30K'
} else if(ISSUES$VEHICLE_KM_READING <= 40000 & ISSUES$VEHICLE_KM_READING > 
30000){
  ISSUES$KMRANGE <- '40K'
} else if(ISSUES$VEHICLE_KM_READING <= 50000 & ISSUES$VEHICLE_KM_READING > 
40000){
  ISSUES$KMRANGE <- '50K'
} else if(ISSUES$VEHICLE_KM_READING <= 60000 & ISSUES$VEHICLE_KM_READING > 
50000){
  ISSUES$KMRANGE <- '60K'
} else if(ISSUES$VEHICLE_KM_READING <= 70000 & ISSUES$VEHICLE_KM_READING > 
60000){
  ISSUES$KMRANGE <- '70K'
} else if(ISSUES$VEHICLE_KM_READING <= 80000 & ISSUES$VEHICLE_KM_READING > 
70000){
  ISSUES$KMRANGE <- '80K'
} else if(ISSUES$VEHICLE_KM_READING <= 90000 & ISSUES$VEHICLE_KM_READING > 
80000){
  ISSUES$KMRANGE <- '90K'
} else if(ISSUES$VEHICLE_KM_READING <= 100000 & ISSUES$VEHICLE_KM_READING > 
90000){
  ISSUES$KMRANGE <- '100K'
} else {
  ISSUES$KMRANGE <- 'MORETHAN100K'
} 
 Warning messages:
1: In if (ISSUES$VEHICLE_KM_READING <= 10000) { :
  the condition has length > 1 and only the first element will be used
2: In if (ISSUES$VEHICLE_KM_READING <= 20000 & ISSUES$VEHICLE_KM_READING >  
:
  the condition has length > 1 and only the first element will be used
3: In if (ISSUES$VEHICLE_KM_READING <= 30000 & ISSUES$VEHICLE_KM_READING >  
:
  the condition has length > 1 and only the first element will be used

All the values in KMRANGE column are the same once I execute the above statement. Could someone let me know where I am going wrong with the code. Of does the logic of 'IF' statement doesn't

Aucun commentaire:

Enregistrer un commentaire