Sunteți pe pagina 1din 43

OUTLINE

Database using R

Manajemen data

Analisis prediktif
menggunakan Regresi
DATABASES
USING R
DATABASE MANAGEMENT
SYSTEM
Open Source

Lisence

Main Language
DATABASES IN R
RMySQL ROracle

RSQLite odbc

RPostgres bigrquery
DBI : R DATABASE INTERFACE

RSQLite
odbc
bigrquery
CONNECTING TO A DATABASE
dbConnect(MySQL(), user="username", password="pass",
host="localhost", dbname="dbname")

dbConnect(SQLite(), dbname="dbname")

dbConnect(RPostgres::Postgres(), host="localhost",
port="db_port", user="db_user",
password="db_password", dbname="dbname")
CONNECTING TO A DATABASE
dbConnect(Oracle(), user="user", password=“pass",
host="localhost", dbname="dbname")

dbConnect(odbc::odbc(),driver="SQL Server",
server=01wh155073, database="mydbname",
uid="username", pwd="passwd")

dbConnect(bigquery(), project = "global-fishing-watch",


dataset = "global_footprint_of_fisheries",
billing = "coba-222418",
use_legacy_sql = FALSE)
EXAMPLE : CONNECTING

Con <- dbConnect(MySQL(), user="username",


password="pass", Open connection
host="localhost",
dbname="dbname")
EXAMPLE : DATABASE
OBJECTS
dbListTables(con) List table names in the database

dbListFields(con,"tablename") List field names of a table

dbWriteTables(con,"tablename","dataframe“,
Write a dataframe to a database table
header=T,row.names=F)

dbRemoveTable(con,"tablename") Remove a table from database


EXAMPLE : LOAD DATA

mydata <- dbReadTable(con,"tablename")


dbReadTable returns a data frame that contains the complete data from the table

or

mydata <- dbGetQuery(con,"SELECT * FROM tablename")

dbGetQuery returns a data frame that contains the complete data from the table using SQL Query
EXAMPLE : LOAD DATA

mydata <- dbGetQuery(con,"SELECT * FROM tablename LIMIT 100")

returns a data frame that contains the first 100 rows

query=“SELECT * FROM tablename where colname1='s' and colname2>1"


mydata <- dbGetQuery(con,query)

returns a data frame that selecting only the data meeting certain criteria from the table
EXAMPLE : CLOSING

dbDisconnect(con) Close connection from database


MANAJEMEN
DATA
PAKET “DPLYR”
Beberapa fungsi dalam “dlpyr”

 select: memilih variabel berdasarkan namanya


 filter: mengambil sebagian data berdasarkan
kriteria tertentu
 mutate: menambahkan variabel/kolom baru
 summarise / summarize: memberikan ringkasan
statistik dari berbagai variabel
 %>%: menggabungkan beberapa fungsi
DATA
> country <- dbReadTable(Con,"Country")
> str(country)
MISSING VALUE (NA)
> NoMissing=(na.omit(country))
> str(NoMissing)
SELECT()
Fungsi select() dapat digunakan untuk memilih satu atau
beberapa kolom dari data.

mengambil 3
kolom pertama
SELECT()
> subset2 <- select(country, -(Code:Continent))
> head(subset2)

Menghilangkan 3
kolom pertama
FILTER()
Fungsi filter() digunakan untuk mengekstrak baris dari data frame.
> GNP100 <- filter(country, GNP < 100)
> str(GNP100)

GNP kurang
dari 100
FILTER()
> Filter2 <- filter(country, Continent=="North America"
& Population > 10000)
> str(Filter2) Continent “North America” dan
population >10.000,
MUTATE()
Fungsi mutate() dapat digunakan untuk melakukan transformasi variabel
dalam suatu data frame.

datanew <- mutate(country,


poptrend = Population - mean(Population))
MUTATE()
MUTATE()
Fungsi transmute()
SUMMARIZE ()
Fungsi summarize()
atau summarise() dapat
digunakan untuk
memberikan gambaran
suatu data berdasarkan
nilai pada suatu
variabel tertentu
%>%
Fungsi %>% sangat > country %>%
berguna untuk + group_by(Continent) %>%
menggabungkan + summarise(
beberapa fungsi dplyr
dalam satu operasi.
+ n = n(),
+ mean_GNP = mean(GNP)
+ ) %>%
+ filter(n > 20)
%>%
IF ELSE
Fungsi logika yang berguna ketika kita ingin mengelompokkan
suatu variabel kedalam beberapa kategori tertentu

> country$kat=ifelse(country$GNP<500,"low",
ifelse(sleep$sleep_total<1000,
"moderate","high"))
IF ELSE
ANALISIS
PREDIKTIF
MENGGUNAKAN
REGRESI
ANALISIS
PREDIKTIF
Prediktif Analitik digunakan untuk
membuat prediksi tentang suatu
kejadian masa depan.
Jenis analitik membuat suatu model
statistik yang dapat memprediksi suatu
nilai dari kejadian baru dan kejadian masa
depan. 
ILUSTRASI

Ingin diduga nilai jual sebuah rumah di suatu daerah tertentu

Diambil sampel acak dari ratusan rumah yang ada dalam daerah tersebut,
kemudian hitung nilai tengah/ rataan harga jualnya

Namun, penggunaan metode ini artinya kita mengabaikan informasi yang


mudah diamati, misalnya luas lantai, banyaknya kamar tidur, banyaknya
kamar mandi, dan umur rumah tersebut.

Padahal informasi ini akan lebih bermanfaat jika digunakan untuk menaksir
nilai jual rumah yang bersangkutan. Mengapa????
MENGAPA ????

1. Antara harga jual sebuah rumah dengan luas lantai, banyaknya kamar
mandi dan toilet serta umur rumah bisa saja memiliki hubungan
2. Jika diketahui bahwa terjadi hubungan, maka akan mudah untuk
menentukan dan memprediksikan kejadian dari harga jual rumah tersebut
Model regresi

Data Cross section

Regresi merupakan salah satu metode dalam statistika yang seringkali


digunakan untuk mengkaji hubungan antara beberapa variabel dan
menprediksi suatu variabel
Macam-macam Model Regresi
Model Regresi

1 peubah penjelas > 1 peubah penjelas


Sederhana Berganda

Linier Non Linier Linier Non Linier

Linier Peubah Boneka Interaksi

Polinom Akar Reciprocal Log Eksponensial


Model Regresi Linier Sederhana

Linier dalam parameter


Sederhana = banyaknya peubah bebas/penjelas hanya satu
Hubungan antara X dan Y dinyatakan dalam fungsi linier/ordo 1
Perubahan Y diasumsikan karena adanya perubahan X
Model populasi regresi linier sederhana yang hubungannya linier
(selanjutnya cukup sebut “regresi linier sederhana”) :

Y  β 0  β1x  ε
Dengan :
0 dan 1 adalah parameter regresi
 adalah sisaan/galat (peubah acak)
Y adalah peubah tak bebas (peubah acak)
X adalah peubah bebas yang nilainya diketahui
dan presisinya sangat tinggi (bukan peubah acak)
Model Regresi Linier Berganda

Model Regresi Linier Berganda,


dengan k peubah penjelas :

Y  β0  β1X1  β 2 X 2    βk Xk  ε

Linier dalam parameter


Berganda = banyaknya peubah
bebas/penjelas lebih dari satu
ILUSTRASI REGRESI LINEAR
SEDERHANA
 Suatu penelitian ingin mengetahui pengaruh tinggi badan(cm) terhadap berat badan (kg)
manusia di suatu daerah. Pada penelitian ini, diambil sampel secara acak sebanyak 15 orang di
daerah tersebut. Dimisalkan tinggi badan sebagai x dan berat badan y.
ILUSTRASI REGRESI
BERGANDA
 Seorang peneliti ingin melihat pengaruh skor tes kecerdasan dan frekuensi membaca terhadap
nilai ujian siswa. Pada kasus ini diambil 45 siswa untuk dijadikan sampel. Dimisalkan skor tes
kecerdasan dengan X1, frekuensi membaca dengan X2, dan nilai ujian siswa sebagai Y.
REGRESI PADA
BIG DATA???
FF Memory-Efficient Storage of Large Data on
Disk and Fast Access Functions
Description
The ff package provides
data structures that are
stored on disk but behave
(almost) as if they were
in RAM by transparently
mapping only a section
(pagesize) in main memory
- the effective
virtual memory consumption
per ff object.
Import data biasa
(read.csv)

Import
menggunakan ffdf
ILUSTRASI REGRESI PADA BIG
DATA
 Seorang peneliti ingin melihat pengaruh luas lantai, banyaknya kamar tidur, banyaknya kamar
mandi dan umur rumah terhadap nilai jual sebuah rumah sehingga nantinya bisa dilakukan
prediksi pada nilai jual rumah. Pada kasus ini diambil sekitar 5 jutaan rumah untuk dijadikan
sampel, dan terdapat 30 rumah baru dengan kriteria (luas lantai, banyaknya kamar tidur,
banyaknya kamar mandi dan umur rumah) masing-masing.

S-ar putea să vă placă și