R u bankarstvu
  • Zbirka riješenih zadataka
  • O Zbirci
  • 1. Import podataka
    • .csv & .txt
    • Microsoft Excel
    • Microsoft Access
    • SAS
    • .RData
  • 2. Manipulacije i agregacije podataka
    • str
    • ifelse & if
    • Nedostupne vrijednosti
    • %in%
    • as.Date
    • Petlje
    • Agregacije podataka
  • 3. Eksport podataka
    • .csv & .txt
    • Microsoft Excel
    • Microsoft Access
    • SAS
    • .RData
    • Eksport tabela i grafika u Microsoft PowerPoint
    • Eksport tabela i grafika u Microsoft Word
  • 4. Ostalo
    • ODBC konekcije
    • Sistemsko manipulisanje fajlovima i folderima
    • Pozivanje R funkcija i programa iz SAS-a
    • Pozivanje SAS programa iz R-a
    • Korisničke funkcije
    • Neto sadašnja vrijednost
    • Plan otplate kredita
    • Efektivna kamatna stopa
    • Moratorijum na otplatu kredita
    • Restrukturiranje kredita kroz produženje roka otplate
    • WoE & IV
    • WoE transformacije u regresionim modelima
    • Kalibracija rejting skale
    • Monotono grupisanje numeričkih risk faktora
  • Biografija
Powered by GitBook
On this page

Was this helpful?

  1. 4. Ostalo

ODBC konekcije

Previous4. OstaloNextSistemsko manipulisanje fajlovima i folderima

Last updated 4 years ago

Was this helpful?

R ima mogućnost importa podataka iz relacionih SQL baza odnosno eksporta podataka u relacione SQL baze. Kako bismo što vjerodostojnije simulirali okruženje i kompletirali naredni zadatak, prvo je neophodno definisati ODBC konekciju. Naredni koraci prikazuju cjelokupni proces definisanja ODBC konekcije sa Access fajlom iz primjera importa.

Zadatak: Uspostaviti konekciju sa DSN db, definisanim u prethodnom postupku, a zatim importovati podatke iz tabele pod nazivom Tabela1.

> #narednu komandu izvrsiti ukoliko RODBC paket vec nije instaliran
> #install.packages("RODBC")
> library(RODBC)
> #uspostaviti ODBC konekciju
> odbc.con <- odbcConnect(dsn = "db")
> #definisati SQL komandu za import podataka
> sql.com <- "SELECT * FROM Tabela1"
> #importovati podatke pomocu sqlQuery funkcije
> db.accdb <- sqlQuery(channel = odbc.con, query = sql.com)
> #prikazati prva 2 reda db.accdb data framea
> head(db.accdb, 2)
  ID x y z
1  1 2 5 a
2  2 4 4 b
> #zatvoriti ODBC konekciju
> odbcClose(channel = odbc.con)
> #naredne komande izvrsiti ukoliko DBI i odbc paketi vec nijesu instalirani
> #install.packages("DBI")
> #install.packages("odbc")
> library(DBI)
> library(odbc)
> #uspostaviti ODBC konekciju
> odbc.con <- dbConnect(odbc::odbc(), dsn = "db")
> #importovati podatke iz tabele Tabela1
> db.accdb <- dbReadTable(odbc.con, "Tabela1")
> #prikazati prva 2 reda db.accdb data frames
> head(db.accdb, 2)
  ID x y z
1  1 2 5 a
2  2 4 4 b
> #zatvoriti ODBC konekciju
> dbDisconnect(odbc.con)
> #naredne komande izvrsiti ukoliko DBI, odbc, dplyr, dbplyr 
> #paketi vec nijesu instalirani
> #install.packages("DBI")
> #install.packages("odbc")
> #install.packages("dplyr")
> #install.packages("dbplyr")
> library(DBI)
> library(odbc)
> library(dplyr)
> library(dbplyr)
> 
> #uspostaviti ODBC konekciju
> odbc.con <- dbConnect(odbc::odbc(), dsn = "db")
> #definisati tabelu iz baze
> tbl.db <- tbl(odbc.con, "Tabela1")
> #importovati podatke u lokalni tibble objekat
> #vise informacija o tibble objektima pogledati na help strani ?tibble
> tbl.r <- tbl.db %>% collect()
> #prikazati importovane podatke
> tbl.r
# A tibble: 5 x 4
     ID     x     y z    
  <int> <int> <int> <chr>
1     1     2     5 a    
2     2     4     4 b    
3     3     6     3 c    
4     4     8     2 d    
5     5    10     1 e    
> #zatvoriti ODBC konekciju
> dbDisconnect(odbc.con)

Za ODBCkonekcije sve veću popularnost dobijaDBI paketa i to prvenstveno zbog mogućnosti direktnog izvršenja dplyr komandi nad bazama podataka (putemdbplyr interfejsa) kao i boljih performansi vremena izvršenja upita i upravljanja memorijom.

1. Pokrenuti proces ODBC administriranja
2. Dodati novi DSN (engleski Data Source Name) - Add
3. Odabrati Microsoft Access Driver i nastaviti dalje sa pritiskom na dugme Finish
4. Kreirati Data Source Name (db) i nastaviti proces odabirom lokalnog fajla pritiskom na dugme Select
5. Naći i izabrati db_03.accdb fajl iz radnog direktorijuma, a zatim nastaviti proces pritiskom na dugme OK
6. Kreiran je DSN pod nazivom db