I changed my function but still the else statement does not seem to work... Any thoughts on why the else is not working.
 determine_range <- function() {
 values <- c(1001, 5001, 10001)
 data <- data.frame(x = values)  
 colnames(data) <- "BPM_BEDRAG"
 ranges <- c(1000, 5000, 10000, 15000, 20000, 25000)
 print(data$BPM_BEDRAG)  
 for(i in 1:nrow(data)){
  if (data$BPM_BEDRAG[i] > ranges[1] && data$BPM_BEDRAG[i] < ranges[2] ) {data$BPM_BEDRAG[i] <- "Catagory 1"
  } else if (data$BPM_BEDRAG[i] > ranges[2] |data$BPM_BEDRAG[i] < ranges[3]  ) {data$BPM_BEDRAG[i] <- "Catagory 2"
  } else data$BPM_BEDRAG[i] <- "Catagory 3"   
  }
  data$BPM_BEDRAG
  }