читать в файле xls в r из бизнес-объектов - PullRequest
0 голосов
/ 17 октября 2018

Я скачал файл xls из бизнес-объектов и хочу прочитать его на R. Я испробовал несколько вариантов, самый простой из которых:

library("readxl")
txt=read_excel("file.xls", sheet = 2)

Проблема в том, что он дает мне пустой тиббл,Однако, если я открою файл xls, абсолютно ничего не сделаю, сохраню его и попробую еще раз, он работает!Поскольку мне нужно создать конвейер данных, я хочу, чтобы он сразу работал без этого странного обходного пути.Есть идеи, в чем проблема?Мои собственные мысли касались какой-то собственности типа безопасности, доступной только для чтения, с правами администратора, но я не мог этого понять.

С уважением!Piet

Ответы [ 3 ]

0 голосов
/ 17 октября 2018

Вы можете использовать пакет data.table, который обеспечивает очень простой и быстрый способ чтения и записи .csv или .xls/.xlsx с функциями fwrite и fread.В этом пакете уже есть автоматический отдельный детектор.

Более подробную информацию об этом пакете вы можете найти здесь .

0 голосов
/ 04 декабря 2018

Я не знаю много, но это ошибка с пакетом.Вы можете перейти к readxl 1.0.0, и он работает.

Проблема GitHub с упоминанием сбрасываемых версий: https://github.com/tidyverse/readxl/issues/474

Как перейти к нужной версии: https://support.rstudio.com/hc/en-us/articles/219949047-Installing-older-versions-of-packages

0 голосов
/ 17 октября 2018

Я всегда стараюсь не импортировать файлы .xls из-за таких проблем.По возможности я всегда импортирую его как файл .csv.Однако в зависимости от структуры файла .xls это не всегда возможно или может потребовать дополнительной работы, если в вашем файле .xls имеется много вкладок.

Если возможно, экспортируйте файл .xls как файл .csv.файл, а затем импортируйте его с помощью read.table() или используйте функцию из множества доступных пакетов, таких как data.table или tidyverse.

...