2016-09-28 34 views
-1

Formattable允许一个在R和Rshiny中进行格式化数据输出。一个很好的解释是在这里:https://www.r-bloggers.com/formatting-table-output-in-r/在R中使用带有动态列标题的格式表

example code

在“格式化”功能上面可以看到,列标头引用。我想知道这个代码是否可以用一种方式编写,以便处理根据用户对rshiny应用程序的输入而改变的动态列标题。 我在想,可能有一种方法来引用列号而不是具体的名称,但迄今为止我一直没有做到这一点。任何帮助表示赞赏。

谢谢。

+0

我发现“动态”这个词在大多数情况下在SO上的使用是毫无意义的。发布一个数据示例(或用您指定的用户输入的代码)并说出预期内容。我无法相信“动态”有自己的标签。而关于标签的描述让我觉得它不适合,因为R是一种解释型语言。在SO上严重弃用张贴代码图片。 –

+0

作为上面的一个简单示例,假设这段代码来自于一个rShiny应用程序,它有一个selectInput,允许用户选择一个日期,然后显示该日期的股票价格。此外,第三列的标题将更改为paste0(“Value”,输入$ date)。随着列标题更改,我不确定如何在上面的格式表函数中引用此列,其中“Value = color_tile(”white“,”orange“)”。我正在考虑按位置而不是名称引用诸如“DF [3] =”但尚未成功的列。 – IPB

回答

2

看来该函数正在寻找一个命名列表来匹配data.frame中的名称。我建议你用你想要的格式创建列表,然后设置“动态”格式参数的名称以匹配你显示的内容。

例如为:

myFormats <- list(formatter("span")) 
names(myFormats) <- input$userEnteredChoiceHere 

formattable(DF, myFormats) 

没有真正可重复的代码虽然,这是很难帮助你更多。代码的图片并不容易。

+0

马克,工作。谢谢 – IPB