Для решения, свободного от утомительных внешних зависимостей *, теперь есть readxl
:
Пакет readxl позволяет легко получать данные из Excel в R. По сравнению со многими из существующих пакетов (например, gdata, xlsx, xlsReadWrite) readxl не имеет внешних зависимостей, поэтому его легко установить и использовать во всех операционных системах. Он предназначен для работы с табличными данными, хранящимися на одном листе.
Readxl поддерживает как устаревший формат .xls, так и современный формат .xlsx на основе xml. Поддержка .xls стала возможной благодаря библиотеке libxls C, которая абстрагирует многие сложности базового двоичного формата. Для синтаксического анализа .xlsx мы используем библиотеку RapidXML C ++.
Его можно установить так:
install.packages("readxl")
или
devtools::install_github("hadley/readxl")
Применение
library(readxl)
read_excel("my-old-spreadsheet.xls")
read_excel("my-new-spreadsheet.xlsx")
read_excel("my-spreadsheet.xls", sheet = "data")
read_excel("my-spreadsheet.xls", sheet = 2)
read_excel("my-spreadsheet.xls", na = "NA")
* не совсем верно, требуется Rcpp
пакет , который, в свою очередь, требует Rtools (для Windows) или Xcode (для OSX), которые являются зависимостями, внешними по отношению к R. Но они не требуют возиться с путями и т. д., так что преимущество перед зависимостями Java и Perl.
Обновление Теперь есть пакет rexcel . Это обещает получить форматирование Excel, функции и многие другие виды информации из файла Excel в R.
.csv
.