Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
导入多个excel工作簿,每个工作簿包含R中的多个工作表_R_Excel_Dataframe_Import - Fatal编程技术网

导入多个excel工作簿,每个工作簿包含R中的多个工作表

导入多个excel工作簿,每个工作簿包含R中的多个工作表,r,excel,dataframe,import,R,Excel,Dataframe,Import,我正在尝试导入多个excel工作簿文件,每个文件由6张工作表组成,并将它们连接到一个R data.frame中。我有多个工作簿文件(wb1.xlsx),每个文件由6个工作表(1、2、3、4、5和6)组成。每个工作簿中的每个工作表都有相同的名称(例如,在wb1.xlsx和wb2.xlsx中,两个文件中的第一个工作表都称为工作表1)。此外,每个工作表在其他工作表和其他工作簿中都具有相同的标题集(例如,wb1中的工作表1和wb2中的工作表2具有相同的标题) 我已尝试使用rio软件包中的import_l

我正在尝试导入多个excel工作簿文件,每个文件由6张工作表组成,并将它们连接到一个R data.frame中。我有多个工作簿文件(wb1.xlsx),每个文件由6个工作表(1、2、3、4、5和6)组成。每个工作簿中的每个工作表都有相同的名称(例如,在wb1.xlsx和wb2.xlsx中,两个文件中的第一个工作表都称为工作表1)。此外,每个工作表在其他工作表和其他工作簿中都具有相同的标题集(例如,wb1中的工作表1和wb2中的工作表2具有相同的标题)

我已尝试使用rio软件包中的import_list函数:

library(rio)

DF <- import_list(dir(pattern = ".xlsx"), rbind = TRUE)
库(里约)

DF这里有一个解决方案,您只需要指定每个wb的工作簿数量和工作表数量

library(XLConnect)
library(purrr)

number_of_sheets <- 6 
number_of_wbs <- 100
DF <- map_dfc(1:number_of_wbs, function(x) {
  wb <- loadWorkbook(paste0("wb",x,".xlsx"))
  tables <- map_df(1:number_of_sheets,function(y) readWorksheet(wb,
                                          sheet = paste0("Sheet",y)))
  colnames(tables) <- paste0("wb",x,".xlsx")
  return(tables)
} 
)
第二个工作簿的Sheet1包含:

header1
0.706206019
0.929864738
0.820188853
0.822880906
0.986846159
0.201870111
0.295824333
0.682271283
0.918636814
0.308713375
0.620041348
0.396961295
0.592918544
0.813379311
0.679918546
0.149930842
0.344765206
0.454569802
0.439798642
0.79660039
header1
0.359145063
0.97889235
0.561966441
0.560005392
0.37039449
0.827651329
0.428239882
0.684086633
0.376406956
0.67482297
0.088475246
0.843315296
0.478772685
0.431786377
0.213058341
0.570395357
0.418874778
0.270617596
0.0852233
0.894443579
我的最终输出是这样一个数据帧:

> DF
     wb1.xlsx    wb2.xlsx
1  0.74550551 0.324916411
2  0.76288674 0.503682245
3  0.98223947 0.426830680
4  0.90170329 0.813966804
5  0.56008503 0.680455280
6  0.45745945 0.001716535
7  0.14974342 0.089871648
8  0.23033300 0.362305799
9  0.57763394 0.426019894
10 0.04268935 0.055268297
11 0.26225496 0.903003228
12 0.58454780 0.836464347
13 0.43491035 0.393890841
14 0.18667029 0.147720392
15 0.81738619 0.653991709
16 0.45968982 0.209427777
17 0.13967637 0.274640492
18 0.25768938 0.522425832
19 0.66174385 0.722621747
20 0.49010581 0.689067647

我的回答解决了你的问题吗?