r Shiny renderdatatable 转置数据帧问题
Posted
技术标签:
【中文标题】r Shiny renderdatatable 转置数据帧问题【英文标题】:r Shiny renderdatatable transpose data frame issue 【发布时间】:2016-01-16 15:10:11 【问题描述】:当我在 Shiny 中使用 renderdatatable 函数显示转置数据集时,该函数返回的结果缺少表列名。
很想知道其他人为缓解此问题所做的工作,非常感谢任何帮助。
【问题讨论】:
您能发布一个可复制的小例子吗?我发布了一个答案,但现在我意识到我可能误解了一些东西,所以一些示例代码会有所帮助。 【参考方案1】:这可能是因为转置后的数据集没有任何行名(在转置操作后将成为列名)。 如果您确保为数据输入设置列名,那么数据表对我来说就可以了。
library(shiny)
# Some data
n <- 10
dat <- data.frame("a"=sample(LETTERS,n),"b"=runif(n),"c"=runif(n))
rownames(dat) <-paste("r_", sample(LETTERS,n),sep="")
colnames(dat) <-paste("c_", sample(LETTERS,3),sep="")
ui <- shinyUI(fluidPage(
fluidRow(
column(8,dataTableOutput("tbl")),
column(2,actionButton("renderMatrix","Render matrix")),
column(2,actionButton("renderMatrixT","Render t(matrix)"))
)
))
server <- shinyServer(function(input, output)
observeEvent(input$renderMatrix,
output$tbl <- renderDataTable(dat)
)
observeEvent(input$renderMatrixT,
output$tbl <- renderDataTable(t(dat))
)
)
shinyApp(ui = ui, server = server)
示例设置了行名和列名,因此数据表将始终具有“列名”列。
【讨论】:
由行名工作的显示为第二列而不是第一列。他们在右边而不是出现在左边......:(令人沮丧的呃 你能举个例子吗?因为我不确定我是否可以重新创建这种行为 我在反应函数中做错了什么。我修好了它,它工作正常。你让我开心。 太好了,很高兴我能帮上忙!以上是关于r Shiny renderdatatable 转置数据帧问题的主要内容,如果未能解决你的问题,请参考以下文章
将 TableTools 用于 R Shiny 中的 DataTables 用于 renderDataTable
如何在R Shiny中使用renderUI触发renderDataTable进行输入?
在 R Shiny 中使用 DT::renderDataTable 时如何抑制行名?
R Shiny DT::renderDataTable ...如何在下载的表格中自定义标题
如何将renderDataTable的过滤器放在R闪亮的顶部
有没有办法使用 Shiny 更新的 DT::renderDataTable 和 DT::dataTableOutput 按列搜索?