将 Excel 中的特定选项卡读入 R
Read in Specific Tabs from Excel into R
我正在尝试将 excel 文件中的一堆选项卡读入 R。问题是我只需要部分选项卡,而不是全部。当我尝试 select 某些列时,出现错误,因为我不想读入的选项卡不包含我想要的 x1:x4 列。我当前的代码如下。
file.list <- "C:/Users/xxxx/Documents/file.xlsx"
df.list <- lapply(file.list,function(x) {
sheets <- excel_sheets(x)
dfs <- lapply(sheets, function(y) {
read_excel(x, sheet = y, skip = 5) %>%
clean_names() %>%
select(x1:x4)
})
names(dfs) <- sheets
dfs
})[[1]]
list2env(df.list ,.GlobalEnv)
select
可以接受辅助函数。不要直接指定,而是用 any_of
包装。根据?select
any_of(): Same as all_of(), except that no error is thrown for names that don't exist.
df.list <- lapply(file.list,function(x) {
sheets <- excel_sheets(x)
dfs <- lapply(sheets, function(y) {
read_excel(x, sheet = y, skip = 5) %>%
clean_names() %>%
select(any_of(stringr::str_c('x', 1:4)))
})
我正在尝试将 excel 文件中的一堆选项卡读入 R。问题是我只需要部分选项卡,而不是全部。当我尝试 select 某些列时,出现错误,因为我不想读入的选项卡不包含我想要的 x1:x4 列。我当前的代码如下。
file.list <- "C:/Users/xxxx/Documents/file.xlsx"
df.list <- lapply(file.list,function(x) {
sheets <- excel_sheets(x)
dfs <- lapply(sheets, function(y) {
read_excel(x, sheet = y, skip = 5) %>%
clean_names() %>%
select(x1:x4)
})
names(dfs) <- sheets
dfs
})[[1]]
list2env(df.list ,.GlobalEnv)
select
可以接受辅助函数。不要直接指定,而是用 any_of
包装。根据?select
any_of(): Same as all_of(), except that no error is thrown for names that don't exist.
df.list <- lapply(file.list,function(x) {
sheets <- excel_sheets(x)
dfs <- lapply(sheets, function(y) {
read_excel(x, sheet = y, skip = 5) %>%
clean_names() %>%
select(any_of(stringr::str_c('x', 1:4)))
})