Поскольку я не хочу загружать случайный файл с Google Диска, я создал для него собственный пример файла ODS с двумя листами "foo" и "bar", которые выглядят так:
foo
a b
1 2
3 4
bar
a b
7 6
5 4
Итак, у вас было несколько проблем с вашим кодом. Вы споткнулись на свой первый, что вам нужно два аргумента для set_names()
. Другая ваша проблема заключается в том, что вы не указали и .x
, и .f
для map()
. Мы можем решить эти проблемы, используя промежуточный шаг назначения следующим образом:
library(readODS)
library(dplyr)
library(purrr)
library(tidyr)
path <- "test.ods"
sheets <- ods_sheets(path)
mylist <- map(seq_along(sheets), read_ods, path = path) %>%
set_names(sheets)
mylist
$foo
a b
1 1 2
2 3 4
$bar
a b
1 7 6
2 5 4