Veri boyutunun küçük olması durumunda, R, ihtiyacınıza göre kullanılabilecek birçok paket ve işleve sahiptir.
write.xlsx, write.xlsx2, XLconnect de işi yapar, ancak bunlar openxlsx'e kıyasla bazen yavaştır .
Yani, büyük veri kümeleriyle uğraşıyorsanız ve java hatalarıyla karşılaştıysanız. "Openxlsx" e bir göz atmanızı öneririmGerçekten harika olan ve zamanı 1 / 12'ye düşüren .
Hepsini test ettim ve sonunda openxlsx yeteneklerinin performansından gerçekten etkilendim.
Birden çok veri kümesini birden çok sayfaya yazmanın adımları.
install.packages("openxlsx")
library("openxlsx")
start.time <- Sys.time()
x <- as.data.frame(matrix(1:4000000,200000,20))
y <- as.data.frame(matrix(1:4000000,200000,20))
z <- as.data.frame(matrix(1:4000000,200000,20))
wb <- createWorkbook("Example.xlsx")
Sys.setenv("R_ZIPCMD" = "C:/Rtools/bin/zip.exe")
Sys.setenv ("R_ZIPCMD" = "C: /Rtools/bin/zip.exe"), Rtools'tan bazı yardımcı programların referansını aldığı için statik olmalıdır.
Not: Incase Rtools sisteminize yüklenmemişse, lütfen sorunsuz bir deneyim için önce kurun. İşte referans için bağlantı: (uygun sürümü seçin)
https://cran.r-project.org/bin/windows/Rtools/
aşağıdaki bağlantıya göre seçenekleri kontrol edin (kurulum sırasında tüm onay kutularını seçmeniz gerekir)
https://cloud.githubusercontent.com/assets/7400673/12230758/99fb2202-b8a6-11e5-82e6-836159440831.png
addWorksheet(wb, "Sheet 1")
addWorksheet(wb, "Sheet 2")
addWorksheet(wb, "Sheet 3")
writeData(wb, 1, x)
writeData(wb, 2, x = y, withFilter = TRUE)
writeDataTable(wb, 3, z)
saveWorkbook(wb, file = "Example.xlsx", overwrite = TRUE)
end.time <- Sys.time()
time.taken <- end.time - start.time
time.taken
openxlsx paketi, excel dosyalarındaki / dosyalarındaki büyük verileri okumak ve yazmak için gerçekten iyidir ve excel içinde özel biçimlendirme için birçok seçeneğe sahiptir.
İlginç gerçek şu ki, burada java yığın belleği ile uğraşmak zorunda değiliz.
createSheet
Bir döngü içinde yeni sayfalar oluşturmanıza ve ardından bunlara yazmanıza izin veren bir işlev vardır . Ek olarak, XLConnect'teki eşdeğer işlevler , veri çerçevelerinin bir listesinin birden çok sayfaya yazılmasına izin verecek şekilde vektörleştirilmiştir.