【问题标题】:How to convert List elements into separate data.frames? [duplicate]如何将 List 元素转换为单独的 data.frames? [复制]
【发布时间】:2014-07-15 04:16:24
【问题描述】:

我已经加载了一个 Excel.xlsx,它有 8 个工作表作为列表,由

> require (XLConnect)
> wb <- loadWorkbook ("D:/data /Excel.xlsx")    
> list <- readWorksheet (wb, sheet = getSheets (wb)) 

但我想要的是 8 个独立的 data.frames。所以我想将列表“取消列出”到 data.frames 中。我已经尝试过 ldply,但这会将所有 8 张工作表合并到一个 data.frame 中。

有谁知道如何在一个 Excel 下将工作表加载为单独的 data.frames?或者如何将 List 元素转换为单独的 data.frames?非常感谢!

【问题讨论】:

  • 你检查?list2env了吗?
  • 啊...我不知道。您能否更具体地了解如何使用 list2env?
  • 将它们存储在单独的变量中还是一起存储在列表中有什么区别?单个列表实际上更加灵活。
  • 是的,确实如此。但是我想将一些表合并为一张,然后将这张表与其他一些表合并。当工作表存储在列表中时如何执行此操作?谢谢。
  • 取决于您所说的加入是什么意思,这似乎是您的问题首先应该包含的细节和说明。 do.call(rbind,list(...))?或者this

标签: r list dataframe xlsx


【解决方案1】:
library(XLConnect)
wb <- loadWorkbook ("D:/data /Excel.xlsx") 
sheets <- getSheets(wb)
invisible(lapply(sheets,function(sheet) 
             assign(sheet,readWorksheet (wb, sheet = sheet ),pos=1)))

这将为每个工作表创建数据框,命名为工作表名称。

然而:这种使用assign(...) 静默创建变量的业务通常是不受欢迎的。

【讨论】:

  • 这很完美!爱它爱它!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-08-14
  • 1970-01-01
  • 2017-08-25
  • 1970-01-01
  • 2016-09-28
  • 2021-05-26
  • 1970-01-01
相关资源
最近更新 更多