mercredi 1 avril 2020

avoid overwriting when using consecutive else if statemenets in R

Long story short, below is part of my code. It consist of a for loop and consecutive else if statements. It run, but some overwriting occurs. For instance i know a plan does not exist in the product line, but i get "subcoverage not found". How is it possible ?

    for (i in 1:length(prodDescr$product)){

      plan <- prodDescr$product[i]
      subcoverage <- prodDescr$subcoveragekey[i]
      subcoverageCovered <- prodDescr$subcoveragekey[i]

  if (plan == "NA"| subcoverage =="NA") {
    out <- "erroneus data"
  } else if(!(plan %in% names(productLine[["products"]]))){
    out <- "plan does not exist"
  } else if(!(subcoverage %in% productLine[["products"]][[plan]][["subCoveragesCovered"]])){ 
    out <- "subcoverage not found"
  } else if(!(subcoverage %in% names(productLine[["products"]][[plan]][["subCoverageCC"]]))){ 
    out <- "subcoverageCC not found"
  } else {
    out <- productLine[["products"]][[plan]][["subCoverageCC"]][[subcoverage]][["value"]]

      lim <- c(lim, out)

Aucun commentaire:

Enregistrer un commentaire