将数据表转换为 R 中的数据框

Transform datatable to a dataframe in R

我想将 z 转换为使用 write_xlsx 的数据框。我尝试 z<-data.frame(z),但没有用。有什么解决办法吗?

library(DT)
library(writexl)

Test <- structure(list(date2 = structure(c(18808, 18808, 18809, 18810
), class = "Date"), Category = c("FDE", "ABC", "FDE", "ABC"), 
coef = c(4, 1, 6, 1)), row.names = c(NA, 4L), class = "data.frame")


z<-datatable (Test, options = list(columnDefs = list(list(className = 'dt-center', targets = "_all")),
                                   paging =TRUE,searching = FALSE, pageLength =  10,dom = 'tip',scrollx=T),rownames = FALSE)


write_xlsx(z, 'C:/Users/Carlos/Desktop/datas.xlsx')

数据在几层之下,所以你必须把它捞出来。在本例中,它位于 'x' 元素中和名为 'data' 的 table 下。通常像这样的复杂结构 (class(z) returns "datatables" "htmlwidget") 会像这样嵌套数据,所以只需要一点挖掘。

as.data.frame(z$x$data)

最好的, 穆斯塔法