根据 Shiny R 中的用户选择生成动态/多个输入框来收集数据

2024-01-19

我正在尝试在 Shiny 中构建一个应用程序,该应用程序 (1) 询问用户他/她的投资组合中的资产数量。根据数字输入,(2) 向用户显示一个数字框,用于输入所拥有的投资组合的百分比以及资产的股票代码/名称。 例如,如果用户输入 3 作为投资组合中的资产数量,他将看到如下内容:

Asset1 ----> Enter ticker______      Enter Wight______

Asset2 ----> Enter ticker______      Enter Wight______

Asset3 ----> Enter ticker______      Enter Wight______

这被认为是动态的,因此资产数量越多,输入字段就越大。 最后,在步骤(3)中,我想将每个资产输入的信息保存在表格中并显示该表格。

这就是我所拥有的,但它离我需要的还差得很远。我对 Shiny 完全陌生,这是我遇到麻烦的一半原因:

UI.R

 shinyUI(pageWithSidebar (

  headerPanel( "Portfolio Returns"),

  sidebarPanel(

    numericInput("assets", label = "Enter Total Assets", value="")
    
  ),
 mainPanel(

tableOutput("table"))     
 )
) 

server.R

shinyServer(
  function(input,output) {
  output$DynamicAssets <- renderUI ({
  
  Assets <- as.integer(input$assets)
  
  for(i in 1:Assets,function(i) {
  "ticker" = textInput("Ticker", label="Enter Ticker", value="Enter Ticker"),
  
  "weight" = numericInput ("AssetWeight", label="weights of Assets", value="")
  
     })
    })

  })
 })

我知道代码已完成,因为我不知道下一步该做什么。这就是我通过网络搜索得出的全部信息。我们将非常感谢您的帮助。


ui.R

library(shiny)

shinyUI(pageWithSidebar (

  headerPanel( "Portfolio Returns"),

  sidebarPanel(
    numericInput("assets", label = "Enter Number of Assets in Portfolio", value="1"),
    uiOutput("tickers")
  ),
  mainPanel()
)) 

server.R
- 请注意,要传递多个项目renderUI()函数你必须将它们分组到一个列表中,在这里lapply()正在创建一个列表列表。

library(shiny)

shinyServer( function(input, output, session) {

  output$tickers <- renderUI({
    numAssets <- as.integer(input$assets)

    lapply(1:numAssets, function(i) {
      list(tags$p(tags$u(h4(paste0("Asset ", i)))),
           textInput(paste0("ticker", i), label = "Ticker Name", value = "Enter ticker..."),
           numericInput(paste0("weight", i), label = "Weight of Asset", value=0))  
    })
  })
})  
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

根据 Shiny R 中的用户选择生成动态/多个输入框来收集数据 的相关文章

  • 无法安装bigrf包

    我在安装 bigrf R 软件包时遇到了一些极其令人沮丧的困难 我已经尝试过以下方法 install packages bigrf repo https github com aloysius lim bigrf git type sour
  • 如何使用Shiny中的下载按钮?

    我想下载一个csv使用 Shiny 中的下载按钮下载文件 该文件将使用辅助 r 脚本中的参数创建 SERVER output downloadData lt downloadHandler filename function paste d
  • ggplot 中的分层轴?

    我想知道是否可以在 GGLPOT2 或其他图形包 我只是更喜欢 ggplot 中制作分层 分段轴 我想要做的是获取下面的数据 制作一个堆积条形图 其中 x 轴上有周期 但在每个周期内 还有每种动物 那么每只动物内的条形颜色将是 颜色 变量
  • 不同元素的ggplot字体大小

    我知道在创建 ggplot 图后我可以使用theme get 返回所有主题元素的详细信息 这对于弄清楚诸如此类的事情非常有帮助strip text x等等 但我有两件事无法弄清楚 1 在下面的ggplot图形中 代表短语 被土拨鼠卡住的木头
  • 从 R 文本中提取网站链接

    我有多个文本 每个文本都可能包含对一个或多个网络链接的引用 例如 text1 s 1212a as www abcd com asasa11 我如何提取 www abcd com 来自 R 中的这段文字 换句话说 我希望提取以www并结束于
  • 根据 B 列中的一系列值获取 A 列的平均值

    我的数据框有几列 如下所示 df1 lt data frame A c 1 2 4 B c 1 3 1 C c 1 1 3 我有两个条件来获取 A 列的平均值 条件1 我想在B为1时获得A列的平均值 即只对row1和row2进行平均 条件2
  • 如何为每个条形图制作具有定义水平边框的堆叠条形图

    我有一些数据想以一种我不知道如何在条形图中显示的方式 希望你能帮我解决这个问题 我的表由 4 列组成 簇 0 6 IgG Status mild high mild low Severe High 患者 1 16 和值 每个簇的标准化值 这
  • 加载 plyr 包时出现问题

    我使用 R 2 13 1 但未能成功尝试在 R 中加载包 plyr 1 6 我已将其手动安装到目录 R library 中 我的代码是 libPaths R library library plyr 我收到消息 库 plyr 中的错误 pl
  • 将缺失的行添加到数据表中

    我有一个数据表 library data table f lt data table id1 c 1 2 3 1 2 3 id2 as factor c a a b c b d v 1 6 key c id1 id2 id1 id2 v 1
  • 在 R 中绘制决策树(插入符)

    我已经训练了一个数据集rf方法 例如 ctrl lt trainControl method LGOCV repeats 3 savePred TRUE verboseIter TRUE preProcOptions list thresh
  • selectInput 的动态数量

    我是闪亮的新手 所以这可能是一个非常基本的问题 我想编写一个闪亮的应用程序 其中用户输入 n 我们得到 n 个 selectInput 选项 但我无法做到这一点 基本上任何形式的 for 循环都不起作用 我尝试的代码如下 library s
  • rgdax(coinbase)数据未按预期收集数据

    我正在尝试使用rgdaxR 包用于下载一些历史价格 我设置了 API 密钥等 并尝试在过去 24 小时内加载 start lt strftime Sys time Y m dT H M SZ tz UTC end lt strftime S
  • 将 RMarkdown 文档编织为 Word 时方程式和引用丢失

    我不确定这个问题是否更适合LaTeX论坛 我将其发布在这里是因为我怀疑问题更多是关于knitr和 RMarkdown 相比于 LaTeX 我在 RStudio 中有以下 RMarkdown 文档 title Capricious Behav
  • 获取非零数据的列意味着

    R 可以获得数据帧非零值的 colMeans 吗 data lt data frame col1 c 1 0 1 0 3 3 col2 c 5 0 5 0 7 7 colMeans data 1 33 4 我想要这样的东西 mean dat
  • 在 R 中根据时间序列数据制作 3D 曲面

    我有一个大型数据集 我想从中制作 3D 表面 我希望 x 轴为日期 y 轴为时间 24 小时 z 轴 高度 为我的值 我是 R 初学者 所以越简单越好 http www quantmod com examples chartSeries3d
  • 使用shinyjs通过javascript在闪亮的应用程序中操作现有的Leaflet地图

    我有一个闪亮的应用程序 其中包含现有的传单地图 我希望能够在渲染后使用自定义 javascript 通过shinyjs包裹 一个最小的例子如下 app R packages library dplyr library leaflet lib
  • 仅当 ggplot 中 y 轴的下限设置为 0 时才会出现图条[重复]

    这个问题在这里已经有答案了 我正在尝试创建一个条形图 当我将限制设置为 0 7 时 就会出现条形 但是 我希望下限为 1 而不是 0 当我将下限设置为 1 时 条形图不会出现 我收到以下错误消息 Removed 8 rows contain
  • magrittr 管道中的 WOE

    如何将下面的证据代码权重放入 magrittr 管道中 df gt 我尝试过的一切似乎都不起作用 df library Information library magrittr df a c aa bb cc aa aa aa bb cc
  • 如何根据值扩展数据框? [复制]

    这个问题在这里已经有答案了 我有以下输入数据框 df lt data frame x c a b c y c 4 5 6 from c 1 2 3 to c 2 4 6 df x y from to 1 a 4 1 2 2 b 5 2 4
  • 如何从普通 JavaScript 中的输入获取对象

    例如 我有 3 个输入

随机推荐