从多个Excel文件中的特定单元格提取数据-R

时间:2020-02-09 21:51:56

标签: r excel lapply readxl

我需要从多个Excel文件的两个单元格(E6:E7)中提取数据(日期,时间),然后将该数据存储到数据框中(日期和时间的单独列)。

有关我尝试过的代码,请参见下文。

setwd("C:/Users/tsamuels/Desktop/PDRA - Collins/growth_rate_folder")
file.list <- list.files(path=".", pattern="\\d.xlsx$")
df.list <- lapply(file.list, read_excel(path=".", sheet = 1, range = "E6:E7", col_names = FALSE,
                                        col_types = NULL))

任何帮助表示赞赏!

2 个答案:

答案 0 :(得分:0)

我没有使用read_excel,而您没有提供MRE,所以我无法对其进行测试,但是您可以尝试使用此方法。

df.list <- lapply(file.list, read_excel, sheet=1, range="E6:E7", col_names=FALSE, col_types = NULL))

答案 1 :(得分:0)

对文件以及输出的方式做一些假设:

files <- list.files('.', pattern = '*.xlsx', recursive = TRUE)
df1 <- lapply(files, 
              function(x) {readxl::read_xlsx(x, sheet = 1, range = "E6:E7", col_names = FALSE)}) %>% 
  bind_cols %>% 
  t %>% 
  data.frame

colnames(df1) <- c('date', 'time')
rownames(df1) <- files

bind_cols(或者您需要bind_rows?)将获取您的数据帧列表并将其合并