if-statement - 带有变量的 if 语句在多个地方使用
问题描述
我正在尝试构建一个闪亮的仪表板,我必须在其中使用 if 语句来确定应该如何处理变量。在这种情况下,if 语句分配一个倍数(1 或 0),然后在代码中稍后将其与多个变量相乘。由于某种原因,我无法让 IF 语句在 renderUI 函数之外工作。我试图使它成为一个反应函数,但这也不起作用。
server <- function(input, output, session) {
LinerCost <- reactive ({ input$LLDPE_Liner/100 * DirectRM_Cost$Rs_KG[15] +
input$Other_Additive_Liner/100 * DirectRM_Cost$Rs_KG[20]})
reactive({if (input$lamination == "lam_yes") {
lam_rm_multiple = 1} else {
lam_rm_multiple = 0
}})
LamCost <- reactive({ LamCost * lam_rm_multiple })
LinerCost <- reactive ({LinerCost * liner_rm_multiple})
Weight <- reactive ({
as.numeric(input$final_lam_weight) * lam_rm_multiple
})
RMcost <- reactive({
((as.numeric(input$final_unlam_weight) / CombinedWeight()) * UnLamCost())
})
}
shinyApp(ui, server)
在这里,我希望lam_rm_multiple
为 分配一个 0 或 1 的值,然后将其乘以变量并根据需要强制它们为 0。目前,我在闪亮的说法中遇到错误 - 警告:错误:找不到对象'lam_rm_multiple'
解决方案
推荐阅读
- php - 获取字符串中每个字符的字符类型
- ruby-on-rails - 重定向后会话为空
- python-3.x - 可以连接到本地主机但不能远程,pyspark
- linux - 通过环境变量限制 TensorFlow GPU 内存使用
- c++ - 为什么我的 void 函数没有返回正确的值?(C++ 的新手)
- http - 为什么同源策略不阻止 POST 请求?
- jquery - 如何删除全日历 ASP.NET Core MVC 中的事件?
- tensorflow - AttributeError:模块“keras_preprocessing.image”没有属性“DataFrameIterator”
- php - Laravel-Mix 8 与跑步手表
- dask - 使用 `map_partitions` 并行化预测