Почему функция whi.min определяет другую строку в качестве выходной, если значения показывают, что другая является минимальной? - PullRequest
0 голосов
/ 14 октября 2019

При уровне смертности от пневмонии в стационаре (ниже) строка 104 имеет значение 9,7, а строка 99 - 10,5. При запуске which.min возвращаемое имя больницы - строка 99, а не строка 104. Почему это?

Версия R и Система:

-Windows 10
-R-3.6.1

Вызов функции:

best("AK","pneumonia")

Используя эту функцию:

best <- function(state, outcome) {
     #read file function

  #Reads the csv file
  dataTable  <- read.csv("outcome.csv", header = TRUE)
  dataTable
  #Passes the state argument to the choice variable
  choice <- state
  #selects all rows which match the state that was selected
  stateOfChoice <- dataTable[dataTable$State == choice,]
  stateOfChoice

  #Makes sure that only three of outcomes found in the csv file are selected
  if(outcome != "heart failure" && outcome != "heart attack" && outcome != "pneumonia"){
    print("wrong condition, try again")
    main()
  }

  #using the selected rows from above, return the minimum value of rate from heart attack and then use this selected row to find the hospital name
  else if (outcome == "heart attack"){


    heart_attack <- stateOfChoice[which.min(stateOfChoice$Hospital.30.Day.Death..Mortality..Rates.from.Heart.Attack),]
    heart_attack
    hospital <- heart_attack$Hospital.Name
    hospital
    return(hospital)
  }

  #Similar as above, but instead with heart failure
  else if (outcome == "heart failure"){
    heart_failure <- stateOfChoice[which.min(stateOfChoice$Hospital.30.Day.Death..Mortality..Rates.from.Heart.Failure),]
    hospital <- heart_failure$Hospital.Name
    return(hospital)
  }

  #Similar as above, but instead with pneumonia
  else if (outcome == "pneumonia"){
    pneumonia <- stateOfChoice[which.min(stateOfChoice$Hospital.30.Day.Death..Mortality..Rates.from.Pneumonia),]
    pneumonia
    hospital <- pneumonia$Hospital.Name
    return(hospital)
  }

}

Показатель смертности от пневмонии в больнице:

 Hospital.30.Day.Death..Mortality..Rates.from.Pneumonia
99                                                    10.5
100                                                   12.1
101                                                   11.6
102                                                   13.4
103                                                   12.5
104                                                    9.7

Название больницы:

Provider.Number                                    Hospital.Name                        Address.1 Address.2
99           020001                 PROVIDENCE ALASKA MEDICAL CENTER                       BOX 196604        NA
100          020006                   MAT-SU REGIONAL MEDICAL CENTER        2500 SOUTH WOODWORTH LOOP        NA
101          020008                       BARTLETT REGIONAL HOSPITAL                 3260 HOSPITAL DR        NA
102          020012                      FAIRBANKS MEMORIAL HOSPITAL               1650 COWLES STREET        NA
103          020017                         ALASKA REGIONAL HOSPITAL                 2801 DEBARR ROAD        NA
104          020018               YUKON KUSKOKWIM DELTA REG HOSPITAL                       PO BOX 287        NA

Вот ссылка нанабор данных:

Набор данных

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...