Работа с Shiny Dashboard, ui.r, server.r и несколькими сценариями r, которые содержат функции.
Основная проблема: у меня есть два набора данных, которые я ввожу в server.r, и я передаюте, кто выполняет функцию, подготавливают / очищают наборы данных, а затем связывают их вместе и должны возвращать полный кадр данных.DataFrame должен быть реактивным.Вот что у меня есть:
В server.r я загружаю данные перед функцией (вход, выход, сессия).Тогда у меня есть:
################server.r code #########################
data <- reactive({
testDF <- prepData(data1, data2)
})
Функция prepData делает множество вещей, но заканчивается на:
####################prepData function return#################
return(rbind(data1, data2))
Если я использую что-то вроде:
############## server.r code#######################
value = nrow(data()),
Тогдакод возвращает правильное значение.Однако я предпочел бы просто вернуть фрейм данных, как я делал с testDF.
Блестящий бросок и ошибка в пользовательском интерфейсе объекта 'testDF' не найдены.
Я пытался работать через: Как мне построить реактивный фрейм данных в R / Shiny? , используя код:
dataR <- prepData(data1, data2)
makeReactiveBinding(dataR)
Это все равно выдает ошибку.Функция явно работает и была проверена, но должно быть что-то, чего я не понимаю в реактивном компоненте использования этой функции.Любая помощь будет оценена.Спасибо!
server.ui
function(input, output, session) {
### PreProcess the Data
data <- reactive({
testDF <- prepData(bdata, qdata)
})
#dataR <- prepData(bData, qData)
#makeReactiveBinding(dataR)
### Information Box Populations
output$monthlytransactions = renderInfoBox({
infoBox(
title = "Payments",
value = nrow(data()),
icon = icon("comments-dollar"),
color = "blue"
)
})
output$monthlyGrossDollars = renderInfoBox({
infoBox(
title = "Payments",
value = sum(testDF$GrossAmount),
icon = icon("comments-dollar"),
color = "blue"
)
})
}
prepData
############# FUNCTIONS ##############
prepData <- function(beamData, qlawData){
##Processing##
#Join DFs
return(rbind(bData, qData))