1.3. Import i eksport podataka

Često se u praksi podaci nad kojima je neophodno izvršiti određenu analizu nazale u različitim tipovima fajlova, kao što su: .txt (text fajlovi), .csv (comma separated fajlovi), .xls, .xlsx, .xlsm (MS Excel fajlovi). Za import odnosno eksport nekih tipova fajlova (kao što su .txt i .csv) R sadrži već bazične funkcije, dok je za MS Excel fajlove neophodna instalacija nekog od dodatnih paketa.

Naredni Primjer 15 pokazuje eksport i import R data frameova u i iz različitih tipova fajlova.

Prvo, generišimo vještački data frame:

> #generisanje ie.df data frame-a#
> ie.df <- data.frame(x = 1:3, y = 3:1)
> ie.df
  x y
1 1 3
2 2 2
3 3 1

Eksportujmo generisani objekat u ex_t.txt i ex_c.csv fajl:

> write.table(x = ie.df, file = "ex_t.txt", row.names = FALSE)
> write.csv(x = ie.df, file = "ex_c.csv", row.names = FALSE)

Pozivanjem prethodne dvije funkcije kreirali smo tekst fajl ex_t.txt i csv fajl ex_c.csv u radnom direktorijumu. Radni direktorijum identifikujemo pozivajući narednu funkciju:

> getwd()
[1] "C:/Users/adjurovic/Documents"

Naredni korak jeste da iste eksportovane fajlove opet importujemo u R:

> read.table("ex_t.txt", header = TRUE)
  x y
1 1 3
2 2 2
3 3 1
> read.csv("ex_c.csv", header = TRUE)
  x y
1 1 3
2 2 2
3 3 1

Jedan od najčešće korišćenih R paketa za manipulaciju MS Excel fajlovima jeste XLConnect paket. Pored samog importa i eksporta podataka u MS Excel, paket sadrži i određene dodatne funkcije za formatiranje eksportovanih podataka. Naročitu primjenu paket nalazi u automatizaciji generisanja izvještaja po unaprijed zadatom obrascu (šablonu).

Primjer 16:

Instalirajmo i importujmo XLConnect paket:

> install.packages("XLConnect")
> library(XLConnect)

Kreirajmo prazan MS Excel file pod nazivom ex_excel.xlsx:

wb <- loadWorkbook("ex_excel.xlsx", create = TRUE)

Zatim, u okviru tog fajla kreirajmo list po nazivom Sheet1:

createSheet(wb, name = "Sheet1") 

Eksportujmo, u prethodnom primjeru generisan, R objekat (data frame) ie.df i sačuvajmo promjene MS Excel fajla ex_excel.xlsx:

> writeWorksheet(wb, ie.df, sheet = "Sheet1")
> saveWorkbook(wb) 

Na ovaj način, u radnom direktorijumu, eksportovan je ie.df data frame u MS Excel fajl pod nazivom ex_excel.xlsx.

Sada odradimo obratnu proceduru - importujmo podatke iz lista Sheet1, MS Excel fajla ex_excel.xlsx generisanog u prethodnom koraku:

> wb_import <- loadWorkbook("ex_excel.xlsx")
> db <- readWorksheet(wb_import, sheet = "Sheet1")
> db
  x y
1 1 3
2 2 2
3 3 1
> saveWorkbook(wb_import) 

Pored manipulacije određenim tipovima fajlova, R ima i mogućnosti direktnog povezivanja sa bazama podataka smještenim na raznim serverima (MS SQL, MySQL, Oracle). Više informacija o ovome može se naći u uputstvu paketa RODBC, RMySQL, ROracle.

Last updated

Was this helpful?