- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
想法
根据 selectizeInput()
输入,我想显示数据框中的一行数据。但是,某些变量只有在它们的值不是 FALSE
时才会显示。 selectizeInput()
包含一个占位符提示,这是非常可取的。
问题
我开发的代码实际上可以工作,但在选择任何选项之前会显示
Error in if: argument is of length zero
在应用程序内部,这是非常不受欢迎的。
示例代码
library("shiny")
# simulate data
data <- data.frame(
name = c("Adam", "Debbie", "Lancelot", "Dracula"),
age = c(21, 48, 72, 1023),
coward = c("yes, a coward", "just a little bit", FALSE, "too old to be a coward")
)
ui <- fluidPage(
# selectize
selectizeInput(
inputId = "input",
label = NULL,
choices = c("..." = "", as.character(data[, "name"])),
selected = NULL,
multiple = FALSE
),
# show output
uiOutput(outputId = "output")
)
server <- function(input, output, session){
output$output <- renderUI({
div(
# show name
data[which(input$input == data[, "name"]), "name"], br(),
data[which(input$input == data[, "name"]), "age"], br(),
# if "coward" is not FALSE than show its value
if(data[which(input$input == data[, "name"]), "coward"] != FALSE){
data[which(input$input == data[, "name"]), "coward"]
}
)
})
}
shinyApp(ui, server)
尝试的解决方案
尝试将 if()
语句包装在 suppressWarnings()
或 suppressMessages()
中。不会改变任何东西。还尝试将 !is.null(input$input) &&
放入 if()
条件中,但它只是将初始错误更改为
Error: missing value where TRUE/FALSE needed
问题
在selectizeInput()
中选择一个选项之前,如何编写条件使得shiny
不会返回错误?
还有其他更通用的 hack 来强制 shiny
不在应用内显示错误消息吗?
我觉得我在这里遗漏了一些明显的东西......
最佳答案
每当您在 R 中遇到不确定的错误时,首先要做的是尝试隔离它并使用 browser()
来查看在错误发生之前发生了什么。执行此操作后,我发现该错误与 Shiny 或 UI 无关,只是因为您试图将 factor(0)
与 FALSE
进行比较。
input$input
的值最初是 ""
。这意味着 data[which(input$input == data[, "name"]), "coward"]
的值最初是 factor(0)
。这意味着您的 if 语句正在执行 factor(0) == FALSE
比较,这会中断。
要弄清楚我需要做的就是将服务器代码简化为
server <- function(input, output, session){
observe({
mydata <- data[which(input$input == data[, "name"]), "coward"]
browser()
if (mydata == FALSE) {
cat("hello")
}
})
}
使用调试器我看到了正在使用的值
关于r - if语句去掉: Error in if: argument is of length zero,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39519491/
我有一个名为 users 的表,其中包含列 firstname 和 lastname。 我正在努力研究如何构造 WHERE 子句以返回匹配的名字、姓氏、名字加空格和姓氏以及姓氏加逗号和名字的结果。例如
如何去掉@后面的单词?例如,如果字符串是 12 @ 8.97 MB 那么输出将变成 12 如何在 JavaScript 中执行此操作? 最佳答案 试试这个: var index = str.index
这是一个创建面包屑的函数。它最初来自其他人,但我对其进行了调整以满足我的需求。现在——我想修复“for(i in bits)”的错误语法,但是当我尝试了我认为可行的方法时,它不起作用。 for (i
这是我对 Vim 折叠的设置: hi Folded term=bold ctermfg=White 如何去掉下划线? 最佳答案 对于您未指定的属性,:hi 命令将保留前一个属性。所以如果你的color
我的程序正确输出了两个 data.frame 的结果秒 Browse[2]> Mismatch Num.Residue PDB.Residue Canonical.Residue 1
我正在为我的应用程序创建一个 NSTouchBar。当该栏显示时,我在左侧看到此 ESC 图标,在右侧看到这些其他图标: 有没有办法摆脱它们并让整个酒吧区域可用? 最佳答案 右侧的图标是“控制条”。
如何删除此文本 My First Heading My first paragraph. 看起来像 My First Heading My first paragraph. 使用
我有以下 javascript promise ,我正在循环遍历文档列表,将它们逐一上传到 Dropbox(API 调用),获取每个文档的共享链接,将它们保存在数组中,然后然后生成一封包含这些链接的电
我试图找到一个解决方案来避免 CKEditor,但旧的 FCKeditor 也去掉了任何标记从先前插入的内容到数据库。 案例: 我将 html 内容插入到数据库中,有些内容包含 元素。 我用 CKEd
这是我当前的 toString 方法 StringBuilder string = new StringBuilder(); for (int i = 0; i < knowledgeD.si
我在Java中的Hashmap中有一个键值对,我按以下方式遍历Map。 ArrayList mysection = new ArrayList(); ArrayList temp =
这个问题已经有答案了: Pandas Merging 101 (8 个回答) 已关闭 3 年前。 我想通过索引列合并两个数据帧。我的代码是: import pandas as pd import nu
我试图使用 facet_grid布置面板,例如, library(tidyverse) library(lubridate) economics %>% filter(date >= ymd(19
我有一个 C# 字符串对象,它包含一个泛型方法的代码,前面是一些标准的 C 风格多行注释。 我想我可以使用 System.Text.RegularExpressions 来删除评论 block ,但我
关闭。这个问题需要更多focused .它目前不接受答案。 想改进这个问题吗? 更新问题,使其只关注一个问题 editing this post . 关闭 9 年前。 Improve this q
我的 wrapper 中有空格,我无法摆脱它们。即使我将 paddings 设置为 0,仍然有空间。我不知道是什么问题。我不想将包装器放在 body 标签中,这样我以后可以更改我想要的内容。 我是 H
http://amz.com/New-Balance-WT910-Trail-Running/dp/B0098FOFCW/ref=zg_bsms_shoes_2 我不需要最后一个/ref=zg_bsm
我正在尝试将多名称列转换为 python 中的单名称列。现在,列名称如下所示: [('passengers', 'January'), ('passengers', 'February')
根据 Brownlees & Gallo 2006(如果您可能感兴趣),我正在尝试从报价数据系列中删除异常值。 代码运行良好,但考虑到我正在处理非常长的向量(最大的向量有 20m 的观察值,20 小时
我有一个 UITableView(恰好有一个 UISearchBar),但似乎无法弄清楚如何去掉它上方的白色/灰色边框。我需要在 UISearchBar 和它上面的黑色之间有无缝的黑色。 我已经尝试隐
我是一名优秀的程序员,十分优秀!