使用R创建动态列表以在闪亮中使用它

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用R创建动态列表以在闪亮中使用它相关的知识,希望对你有一定的参考价值。

我需要格式化一个列表,以便列表项在我闪亮的应用程序上显示为单选按钮。下面是我的列表当前格式化的示例:

mylist = list("Choice 1"=1, "Choice 2"=2, "Choice 3"=3)

该列表应该动态生成。将查询该列表以确定正确的名称,以便替换“选择1”,“选择2”和“选择3”。

我曾尝试使用list<-append但它不解释变量名称。例:

var = "SimpleTest"
mylist=list()
mylist<-append(mylist,list(var=1))

电流输出:

# $var
# [1] 1

我想要的输出是:

$SimpleTest
[1] 1
答案

我在这里遇到了完全相同的问题:

varnames <-c("Choice 1","Choice 2","Choice 3")
mylist<- setNames(as.list(seq(1,length(varnames))),varnames)
mylist
$`Choice 1`
[1] 1
$`Choice 2`
[1] 2
$`Choice 3`
[1] 3

现在您可以动态更新selectInputs!

另一答案

我编辑了您的帖子以澄清问题并提高易读性。

如果我理解正确,您正在尝试更新该列表元素的名称(并且只有名称),其值为1。

mylist = list("Choice 1"=1, "Choice 2"=2, "Choice 3"=3)
var = "SimpleTest"
mylist
# $`Choice 1`
# [1] 1
# $`Choice 2`
# [1] 2
# $`Choice 3`
# [1] 3

如果是这样,以下代码将执行此操作。指定该列表元素的名称,其值为1,该字符串保存在变量var中:

names(mylist)[which(mylist==1)]=var
mylist
# $SimpleTest
# [1] 1
# $`Choice 2`
# [1] 2
# $`Choice 3`
# [1] 3

以上是关于使用R创建动态列表以在闪亮中使用它的主要内容,如果未能解决你的问题,请参考以下文章

从片段访问数据库以在列表中显示

错误:所有观察都在同一组中,同时从闪亮的 ui 列表中动态过滤 R 模型

是否可以从脚本中检索 Javascript 变量以在 R 中使用它

在R闪亮中动态创建表时出错

R shiny 中的级别替换创建两个级别列表,一个为 NULL

RStudio闪亮动态选择