我试图将一个数据表输出到一个闪亮的UI,但它产生了一个奇怪的错误,我复制如下。它尝试取走3列并复制它们,但所有其他列都可以。我检查了输出的后端数据,它很好,只有在显示时才会出现一些奇怪的问题。这3列包含string、int、int。
Warning in `[<-.data.frame`(`*tmp*`, , j, value = list("random string here that's copied down.", :
provided 7 variables to replace 1 variables
Warning in `[<-.data.frame`(`*tmp*`, , j, value = list(1, 3, 3, 450, 2, :
provided 7 variables to replace 1 variables逻辑流程如下:
reactive_data <- eventReactive( input$action, { return(data) })
output$view <- DT::renderDataTable({
reactive_data()
}#, digits = 0),
,options = list(scrollX = TRUE, autoWidth = TRUE,
columnDefs =list(list(width = '500px', targets = list(6))),
searching = FALSE)
)输出数据如下:
Index Number Company Name Case Name Filing Date Circuit Bloomberg Sector
1: 105115 A123 Systems, Inc. case name 1 9/27/2013 2nd random segment
2: 105138 Tesla Motors, Inc. case name 2 11/8/2013 9th C random segment2
Case Status Snippet Freq Freq
1: CASE DISMISSED random string 1 3
2: CASE DISMISSED random string 1 3如您所见,第1列到第7列(在输出中很难看到)是不同的,它们应该是不同的。但是,当OUTPUTING列8-10将第一行复制到下面的所有后续行时,只针对这些列,并产生上面复制的警告/错误。实际保存的数据是所有列的正确数据,但shiny app中的可视输出会随机复制。
发布于 2018-11-15 08:53:12
我也犯了同样的错误。在我的例子中,这是因为我的数据框中的列是列表而不是向量。我必须首先将数据框中的所有列转换为字符向量,然后再将其转换为数据框(因为map函数会生成一个列表):
library(purrr) # for map function
data <- map(reactive_data(), as.character) %>% data.frame(stringsAsFactors = FALSE}https://stackoverflow.com/questions/49020439
复制相似问题