在闪亮调查中具有很多价值的相关问题

问题描述 投票:0回答:1

我正在为一些政府机构进行闪亮调查。我有一个虚拟问题。

这是数据框头的问题

问题 选项 输入类型 输入_id 依赖 依赖值 必填
Nombre completo del individual que captura。 名称 Primer apellido Segundo apellido 文字 nombre_个人 不适用 不适用 正确
货物 De acuerdo al 组织图 文字 货物 不适用 不适用 正确
电子邮报 En minúsculas 文字 correo 不适用 不适用 正确
联邦实体 下加利福尼亚州 选择 实体 不适用 不适用 正确
联邦实体 南下加利福尼亚州 选择 实体 不适用 不适用 正确
联邦实体 坎佩切 选择 实体 不适用 不适用 正确

尾巴

问题 选项 输入类型 输入_id 依赖 依赖值 必填
代码 AAAAA055555 选择 代码 实体 萨卡特卡斯 正确
代码 AAAAA055556 选择 代码 实体 萨卡特卡斯 正确
¿Cuenta con energía electrica? y/n 卢兹 不适用 不适用 正确
¿Cuenta con energía electrica? 没有 y/n 卢兹 不适用 不适用 正确
¿Cuenta con internet? y/n 互联网 不适用 不适用 正确
¿Cuenta con internet? 没有 y/n 互联网 不适用 不适用 正确

这是我正在使用的代码。而且它有效。

library(shiny)
library(shinysurveys)

df <- read.csv("cuestionario_previa.csv", encoding = "latin1")
ui <- fluidPage(
  surveyOutput(df = df,
               survey_title = "Servicios de Energia Electrica e Internet",
               survey_description = "Cuestionario rápido para el diagnostico de los servicios de luz e internet)
)

server <- function(input, output, session) {
  renderSurvey()
  
  observeEvent(input$submit, {
    showModal(modalDialog(
      title = "Congrats, you completed your first shinysurvey!",
      "You can customize what actions happen when a user finishes a survey using input$submit."
    ))
    
  })
}

shinyApp(ui, server)

但是,正如您在尾部看到的,我有一个名为 CODE 的问题,它是问题“entidad”的一个依赖问题。

即如果

entidad == "COLIMA"
我想要这个状态的 CODE 子集。

使用我的数据框,我收到此警告: 警告消息: 选择输入“代码”包含大量选项;考虑使用服务器端 selectize 来大幅提高性能。请参阅 ?selectizeInput 帮助主题的详细信息部分。

我尝试了以下想法:还有其他方法使用 R Shiny 创建依赖调查问卷吗?

但无法使其发挥作用

另外,我尝试将 selectize 添加到我的服务器

server <- function(input, output, session) {
  renderSurvey()
  
  updateSelectizeInput(session, "clues")
  
  observeEvent(input$submit, {
    showModal(modalDialog(
      title = "Congrats, you completed your first shinysurvey!",
      "You can customize what actions happen when a user finishes a survey using input$submit."
    ))
    
  })
}
r shiny survey selectize.js
1个回答
0
投票

updateSelectizeInput
的使用似乎是错误的。应该是这样的:

  updateSelectizeInput(session, 'id', choices = options, selected = character(0), server = TRUE)

其中 session 是会话引用对象,options 是一个字符变量,包含要显示的完整选项列表,selected 可以是字符(0)以显示不默认选项或字符串,而 server = TRUE,启用服务器端选择。

我不知道shinysurvey包是如何工作的,但是您可以使用nav_panel_hidden从头开始开发调查并制定观察答案的逻辑。

© www.soinside.com 2019 - 2024. All rights reserved.