首页 > 解决方案 > 如何将在 R 中作为输出生成的数据框列表导出到单个 Excel 工作表

问题描述

下面是在 R 中生成的可重现的示例数据框。每个投资者的列数相同(由 ID 给出)。不同的是行数。我想将这个多个数据框列表(针对每个投资者)导出到一个 Excel 表中。有超过3000名投资者(行数不同)。请帮忙

 [[993]]   
   investor asset quantity    price   datetime    RG_count  RL_count  PG_count  PL_count
1    1011     MC   2200          8     2016-03-02        0        0        0        0
2    1011     NIJL  100          50     2016-02-22       NA       NA       NA       NA
3    1011     RPAL   300          2     2016-02-16        0        0        0        0
[[994]]
  investor  asset  quantity    price    datetime            RG_count RL_count PG_count PL_count
1    1156   LOYV   1400        10.54   2010-09-15 01:00:00        0        0        1        0

[[995]]
  investor asset quantity   price            datetime RG_count RL_count PG_count PL_count
1    1140   LPC    13272 551.302 2017-03-27 01:00:00        0        0        1        0

[[996]]
  investor asset quantity    price      datetime             RG_count RL_count PG_count PL_count
1    1941   MBK    2700     62.20     2017-04-24 01:00:00        0        0        0        3

[[997]]
  investor asset quantity price   datetime              RG_count RL_count PG_count PL_count
1    1944   JFM   -79040  17.00   2011-07-14 01:00:00        0        0        1        0
2    1944   MC  -221490  3.00     2010-10-20 01:00:00        0        0        1        0
3    1944  RAPL   -59340  1.20    2012-03-13 00:00:00        0        0        0        0
4    1944   XT   -56300  1.75     2012-03-22 00:00:00       NA       NA       NA       NA

标签: htmlrexceldataframe

解决方案


正如评论中提到的,我建议使用bind_rows()from the dplyrpackage 来附加您的数据框,并write.xlsxopenxlsxpackage 中创建您的新文件。

install.packages("dplyr", "openxlsx")
library("dplyr", "openxlsx")

如果您的所有数据都存在于单个数据框中,那么好消息!你的冒险到此结束。

example <- bind_rows(investors_dataframe)
write.xlsx(example, "/Users/Username/Documents/filename.xlsx")

但是,如果您尝试组合多个数据框,一个好的方法是创建所有数据框的列表,然后使用该列表作为参数bind_rows

example2 <- bind_rows(list_of_dataframes)
write.xlsx(example2, "/Users/Username/Documents/filename.xlsx")

推荐阅读