Динамическое обновление числового столбца на основе текста и условная сумма - PullRequest
0 голосов
/ 21 июня 2019

В рамках более крупного приложения Shiny я создаю вкладку для представления данных пользователем, которая заменит лист Excel.По сути, для этого мне нужно разрешить пользователям выбирать значения из выпадающего списка, что достаточно просто с Rhandsontable:

    rhandsontable(DF_Adt, height = 200) %>%
      hot_table(highlightCol = FALSE, highlightRow = TRUE, width = 600)%>%
      hot_col(col = "Serious_Oversight", type = "dropdown", source = so, allowInvalid = FALSE)%>%
      hot_col(col = "Header_Detail", type = "dropdown", source = hd, allowInvalid = FALSE)%>%
      hot_col(col = "Parts_Labor_Decision", type = "dropdown", source = pld, allowInvalid = FALSE)%>%
      hot_col(col = "CCC", type = "dropdown", source = ccc, allowInvalid = FALSE)%>%
      hot_col(col = "VSRs", type = "dropdown", source = vsrs, allowInvalid = FALSE)%>%
      hot_col(col = "Processor_Message", type = "dropdown", source = pm, allowInvalid = FALSE)

Здесь все становится сложнее, и я теряюсь.Мне нужно назначить числовые значения на основе выбора в раскрывающемся списке и затем суммировать условно.Очевидно, что при изменении выпадающего списка числовой эквивалент должен обновляться.В Excel это просто:

=IF(E2="","",IF(E2<>"OK",0.5,0.5+0.1*(F2="OK")+0.1*(G2="OK")+0.1*(H2="OK")+0.1*(I2="OK")+0.1*(J2="OK")))

Дает нам то, что мы ищем:

Audit date  Claim No    Claim Processed By  Audited By  Serious Oversight   Header/Detail   Parts Labor Decision    CCC VSR's   Processor message   Quality Score (Automatic Calculation)
6-19-2019   1111    person  other person    OK  OK  OK  OK  OK  OK  1
6-19-2019   2222    person  other person    Not Warrantable OK  OK  OK  OK  OK  0.5
6-19-2019   3333    person  other person    OK  Failure Mode    OK  OK  OK  OK  0.9

Я бы очень хотел сделать это так же, как это было раньше, то естьавтоматически обновляется без actionButton, но я открыт для всего на данный момент.

...