#r #excel #openxlsx
#r #excel #openxlsx
Вопрос:
Проблема: я испытываю очень странное поведение с openxlsx read.xlsx .
Настройка. У меня есть каталог данных (называемый «Данные» !!!) на моем Onedrive, содержащий целую кучу электронных таблиц Excel. Электронные таблицы похожи по структуре, но не идентичны, и я использую R (3.6.1) для их проверки и объединения. Я использую R studio с рабочим каталогом, установленным в том же каталоге, что и данные.
Интересующий лист в каждой книге называется ProcData, содержащий таблицу с именем DataTable, и создается с использованием Windows power query, извлекающего данные из другого листа в книге.
Экологические декларации
library(Openxlsx)
filelist <- list("nAKRapidTransit2019.xlsx","nAKroadpricing2016.xlsx",... 18 more )
targetsheet <- "ProcData"
Хорошо, теперь это работает. Он отлично считывает таблицу:
read.xlsx("nAKRapidTransit2019.xlsx", sheet= "ProcData")
Однако то, что я хочу сделать, это прочитать все 20 листов в список таблиц данных. У меня есть код для считывания последовательности файлов в список. Проблема не в этом. Проблема в том, что по какой-то странной причине read.xlsx функция блокируется, когда я даю ей объекты для работы. Итак
j <- 6
filelist[j]
targetsheet
read.xlsx(filelist[j], sheet=targetsheet)
Генерирует:
[[1]]
[1] "tAKBusCyclelane2019.xlsx"
[1] "ProcData"
Error in file(description = xlsxFile) : invalid 'description' argument
И нет, файлы не открыты в Excel. Я могу установить j на любое число от 1 до 20, и сообщение об ошибке будет таким же.
Любые объяснения того, что означает сообщение об ошибке, и что я с этим делаю, будут с благодарностью получены.
Ответ №1:
Решаемая!
в
filelist[j]
бит неверен.
это должно быть
filelist[[j]]
конечно!