Ошибка в функции XLConnect::readWorksheet

У меня есть строка кода R, которая дает мне ошибку. Строка кода:

var <- readWorksheet(paste(dir.censo, arq.variaveis, sep="/"), sheet = sheet.variaveis)

где dir.censo содержит путь к каталогу книги Excel, а arq.variaveis — это имя переменной, содержащей имя файла. Естественно, sheet.variaveis содержит имя нужного мне рабочего листа. Файл сохраняется как XLSX. Вот ошибка:

Error in (function (classes, fdef, mtable)  : 
  unable to find an inherited method for function ‘readWorksheet’ for signature ‘"character", "character"’

Я искал эту ошибку в Интернете, но ничего не появилось. Если бы вы могли помочь мне решить эту проблему, я был бы очень признателен. Некоторая системная информация на случай, если она вам понадобится:

Операционная система: Windows 10

Версия R: 3.2.3

Версия RStudio: 0.99.473

Версия Java: 8.0_66

Еще раз большое спасибо.


person Sepehr Moravej    schedule 07.01.2016    source источник
comment
Я забыл упомянуть одну вещь. Я также попробовал ту же строку кода, используя XLConnect::readWorksheet вместо readWorksheet, но это не помогло.   -  person Sepehr Moravej    schedule 07.01.2016
comment
Документы и пример на ?readWorksheet должны быть вашим первым портом захода.   -  person jbaums    schedule 08.01.2016
comment
Да, jbaums, вы правы, именно так я и поступил. Но, к сожалению, это не помогло мне понять, что пошло не так.   -  person Sepehr Moravej    schedule 15.02.2016
comment
Этот вопрос решен в stackoverflow.com/questions/26587659/error-in-xlconnect.   -  person José Bustos    schedule 13.09.2016


Ответы (1)


Я только что понял, как решить эту проблему. Я просто публикую ответ здесь на случай, если кто-то еще столкнется с этой проблемой, поэтому их поиск не будет бесплодным. Я заменил эту строку кода выше следующими двумя строками:

wb <- loadWorkbook(file.path(dir.censo, arq.variaveis))
variaveis <- readWorksheet(wb, sheet = sheet.variaveis)
person Sepehr Moravej    schedule 07.01.2016
comment
Вы можете принять свой собственный ответ, если он решил вашу проблему. - person jbaums; 08.01.2016