2017-02-07 2 views
0

Пытается прочитать данные Excel с листа и разбить их на основе разных логических схем на несколько фреймов данных. Эти несколько фреймов данных должны быть записаны на один и тот же лист Excel в разных листах с использованием R. Просьба предложить пакеты или образец кода, в котором эти пакеты были использованы.Как написать различные dataframes для разделения таблиц Excel в R

+1

Есть [вид] (http://stackoverflow.com/documentation/r/5536/io-for-foreign-tables-excel-sas-spss- Stata/4445/импортирующие-Excel-файлов # т = 201702070710364373435) – user2100721

ответ

0

Для чтения из файла Excel, прочитал этот пост: Read an Excel file directly from a R script

Чтобы создать несколько лист первенствовать архив, пакет XLSX может помочь. Следующая функция принимает имя файла, вектор имен рабочих листов и имена объектов фрейма данных. Примечание, чтобы обеспечить вектор равных размеров для аргументов объекта кадра данных.

save2.xlsx <- function (file, namelist, ...) 
{ 
    require(xlsx, quietly = TRUE) 
    objects <- list(...) 
    fargs <- as.list(match.call(expand.dots = TRUE)) 
    objnames <- as.character(fargs)[-c(1, 2)] 
    nobjects <- length(objects) 
    for (i in 1:nobjects) { 
     if (i == 1) 
      write.xlsx(objects[[i]], file, sheetName = namelist[i]) 
     else write.xlsx(objects[[i]], file, sheetName = namelist[i], 
      append = TRUE) 
    } 
} 

Пример вызова:

mydf1<- data.frame(matrix(data=rnorm(4),ncol=2,nrow=2)) 
mydf2<- data.frame(matrix(data=rnorm(9),ncol=3,nrow=3)) 
save2.xlsx("C:\\myfile.xls",c("Mysheet1", "Mysheet2"),mydf1, mydf2) 
Смежные вопросы