• Tidak ada hasil yang ditemukan

PACKAGE FF DAN FFBASE DALAM R UNTUK BIG DATA

N/A
N/A
Protected

Academic year: 2021

Membagikan "PACKAGE FF DAN FFBASE DALAM R UNTUK BIG DATA"

Copied!
21
0
0

Teks penuh

(1)

PACKAGE FF DAN FFBASE DALAM R UNTUK BIG DATA

“Membahas komputasi, mencoba, dan mendemonstrasikan package FF dalam Big Data”

Paper ini disusun untuk memenuhi tugas mata kuliah Big Data

Yogyakarta, 8 Mei 2017

Disusun oleh :

Nur Fadhillah R Nst (13/348000/PA/15416) Indah Rini Setyowati (14/363382/PA/15844) Annaz Trio Wardhana (14/366130/PA/16215) Fidelis Restu (14/368628/PA/16298)

Dosen Pengampu : Drs. Danardono M.P.H., Ph.D. Vemmie Nastiti Lestari, M.Sc.

PROGRAM STUDI STATISTIKA DEPARTEMEN MATEMATIKA

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS GADJAH MADA

(2)

BAB I

PRINSIP FF DAN FFBASE

A. Pendahuluan

Package ff merupakan salah satu package pada R yang digunakan untuk menangani sistem data pada big data. Package ini merupakan cara yang paling tepat dan efisien saat ingin menyelesaikan masalah dengan suatu dataset yang sangat besar karena peralatannya yang lengkap.

Kelebihan package ff disbanding dengan package bidgata yang lain adalah sebagai berikut.

- Tidak membatasi untuk mengejakan tipe data numerik dan matriks saja seperti package bigmemory, tetapi juga relatif lebih mudah untuk mengakses tipe data karakter, vektor, bahkan faktor.

- Mempunyai fungsionalitas pemuatan data yang efisien dari flat/scv file.

- Tidak pelu menggunakan package sqldf untuk mendapatkan dan menambahkan sepanjang waktu data tersebut di kanan (RAM-terbatas) ukuran ke dan dari database SQLite.

- Memiliki tingkat fungsi yang lebih tinggi (seperti menerapkan set of family, mengurutkan, …) daripada package mmap yang tampaknya kurang bisa digunakan.

- Memungkinkan untuk bekerja dengan dataset yang tidak dapat diletakkan di memory yang package database nya tidak memungkinkan.

Salah satu package yang menunjang bekerjanya package ff adalah package ffbase. Package tersebut sekarang berisi beberapa ekstensi yang sangat berguna. Package ini juga berisi banyak fungsi dari paket dasar R untuk penggunaan dengan dataser besar melalui package ff.

Beberapa fungsi tersebut diantaranya sebagai berikut.

1. Operasi dasar : c, unique, duplicated, ffmatch, ffdfmatch, %in%, is.na, all, any, cut, ffwhich, ffappend, ffdf append, dll.

2. Operator standard pada vektor : +, -, *, /, ^, %%, %/%, ==, !=, <, <=, >=, >, &, |, !, dll. 3. Operator matematika : abs, sign, sqrt, ceiling, floor, truch, round, signif, log, log10, log2,

log1p, exp, expm1, acos, acosh, asin, asinh, atan, atanh, cos, cosh, sin, sinh, tan, tanh, gamma, 1gamma, digamma, trigamma, dll.

4. Selection dan manipulasi data : subset, transform, with, within, ffwhich, dll. 5. Ringkasan statistik : sum, min, max, range, quantile, hist, dll.

(3)

Fungsi-fungsi tersebut bekerja pada objek atau benda kelas ffdf dari package ff. disamping itu, ada beberapa fungsi tambahan yang memungkinakan pengelompokan lebih cepat dengan tidak terbatas pada package ff saja. Misalnya, agregasi kelompok akan lebih cepat jika digunakan fungsi : bySum, byMean, binned_sum, binned_sumsq, binned_tabulate, dll.

B. Fungsi Dasar dan Fungsi Matematika

Terdapat 2 fungsi mendasar yang digunakan dalam package ff, yaitu ff dan ffdf. Dikatakan mendasar karena kedua fungsi tersebut digunakan untuk membuat suatu data berbentuk vektor dan matrix (untuk ff) dan data frame (untuk ffdf).

1. Fungsi ff

Fungsi ff dapat digunakan untuk membentuk flat file 1 dimensi. Syntax yang digunakan adalah :

ff(vmode=”…”,length=…)

Setelah itu, dibentuk data seperti biasa, dan digunakan syntax untuk memodifikasi flat file 1 dimensi yang telah terbuat tadi. Bentuk seperti ini dinamakan vektor ff.

Contoh :

Selain itu, fungsi ff dapat digunakan untuk membentuk flat file multi dimensi. Syntax yang digunakan adalah :

ff(vmode=”…”,dim=…)

Setelah itu, dibentuk data seperti biasa, dan digunakan syntax untuk memodifikasi flat file 1 dimensi yang telah terbuat tadi. Pada 1 dimensi, digunakan data “rivers” yang merupakan data bawaan dari R. Pada multi dimensi ini akan diberikan contoh dengan membuat data sendiri. Bentuk seperti ini dinamakan matriks ff.

(4)

2. Fungsi ffdf

Fungsi ffdf ini sering digunakan dalam aplikasi penyelesaian bigdata. Ffdm singkatan dari FF Data Frame. Berikut akan ditunjukkan perbedaan data frame biasa dengan ffdf.

Di atas merupakan bentu data frame biasa yang sering digunakan. Berikut output jika data di atas dirubah menjadi ffdf.

Perbedaan data frame dengan ffdf yaitu jika digunakan pada big data. Pada data frame biasa, hanya mampu membaca beberapa data saja, tetapi pada ffdf data bisa dibaca secara menyeluruh dengan waktu yang lebih cepat.

Berikut perbedaan pembacaan big data pada Ms. Excel, R tanpa package, dan R dengan package ff.

(5)

a) Ms. Excel

Jumlah data yang terlalu besar, menyebabkan Ms. Excel tidak bisa membaca data secara keseluruhan. Hal ini dikarenakan Ms. Excel mempunyai jumlah baris maksimal.

b) R tanpa package

R tanpa package juga tidak bisa membaca data secara menyeluruh. Dia hanya dapat membaca maksimal 1308378 baris data.

c) R dengan package ff

Package ff pada R bisa membaca data secara keseluruhan. Hal paling mendasar yang bisa diambil dari sini yaitu kita bisa mengetahui jumlah data yang ada.

Dari ketiga perbandingan di atas, bisa diambil kesimpulan bahwa tidak semua aplikasi bisa digunakan untuk membaca apalagi melakukan pengolahan big data. Package ff merupakan salah satu package yang dapat digunakan untuk membaca big data dengan tepat.

3. Operasi Penjumlahan

Fungsi ini digunakan untuk menjumlahkan vektor dalam bentuk ff. Syntax yang digunakan adalah sebagai berikut.

(6)

dimana :

- x : objek ff yang akan dijumlahkan

- na.rm : apakah missing value ingin dihapus?

- range : jumlah integer vektor yang ingin dijumlahkan

Pada intinya operasi penjumlahan pada package ff dan tanpa ff sama, perbedaannya hanyalah jenis pada objek yang digunakan.

4. Operasi Mean

Fungsi ini digunakan untuk menghitung nilai rata – rata atau mean dari suatu objek data. Syntax yang digunakan adalah sebagai berikut:

mean(x, trim = 0, na.rm = FALSE, ...) dimana:

- x : objek pada R yang akan dihitung nilai mean atau rata – ratanya

- trim : nilai pecahan (0 sampai 0,5) dari pengamatan untuk dihilangkan dari setiap ujung nilai x sebelum menghitung mean. Nilai yang berada diluar interval yang telah ditentukan tersebut akan digunakan sebagai titik akhir terdekat.

- na.rm : apakah missing value ingin dihapus sebelum dilakukan proses komputasi? - . . . : argument lebih lanjut

5. Operasi Perkalian Matrix

Pada dasarnya operasi matriks untuk big data tidak tersedia pada packages ff dan ffbase, packages ff dan ffbase hanya berfokus pada pembentukan matriks. Untuk melakukan operasi matriks dapat dilakukan secara manual atau seperti operasi matriks di R, atau menggunakan bantuan beberapa packages seperti biganalytics, atau bigalgebra. Namun pada pembahasan kali ini, akan digunakan operasi matriks secara manual tanpa bantuan packages tambahan, mengingat tujuan dari penelitian ini adalah focus pada penggunaan packages ff dan ffbase.

(7)

BAB II IMPLEMENTASI

A. Penerapan Fungsi Sum, Mean, Dan Kali Matriks Pada Regresi

Selanjutnya akan dibahas mengenai 3 fungsi yang sering digunakan dalam pengolahan data, yaitu fungsi sum, mean, dan kali matrix pada ff. Diperlukan package “ffbase” untuk menjalankan fungus tersebut.

Ketiga fungsi tersebut akan diterapkan pada regresi, yaitu sebagai berikut.

d) Sum, digunakan untuk mencari estimasi parameter pada regresi linear sederhana. 𝛽̂ =𝑛 ∑ 𝑋𝑌 − ∑ 𝑋 ∑ 𝑌

𝑛 ∑ 𝑋2− (∑ 𝑌)2

e) Mean, digunakan untuk mencari estimasi parameter pada regresi linear sederhana. 𝛼̂ = 𝑌̅ − 𝛽̂𝑋̅

f) Kali matrix, digunakan untuk mencari estimasi parameter pada regresi linear ganda. 𝜷̂ = (𝑿′𝑿)−𝟏𝑿′𝒀

Studi kasus yang digunakan yaitu data airline tahun 1987, dengan variabel Y = ArrTime dan variabel X = DepTime untuk regresi sederhana. Sedangkan untuk regresi ganda, digunakan Y = ArrTime, X1 = DepTime, dan X2 = Distance.

Sum FF

Pada studi kasus ini, terdapat beberapa langkah yang dilakukan untuk menggunakan fungsi ffbase hingga didapatkan nilai estimasinya.

1. Membaca data

(8)

3. Melalukan Perhitungan Package “ffbase”

4. Setelah itu, karena terjadi warning, maka dilakukan perhitungan manual untuk mencari estimator 𝛽 dari nilai-nilai yang telah diperoleh.

𝛽̂ =𝑛 ∑ 𝑋𝑌 − ∑ 𝑋 ∑ 𝑌 𝑛 ∑ 𝑋2− (∑ 𝑌)2 = 1311826(2,87 × 10 12) − (1769297027)(1923665971) 1311826(2,72 × 1012) − (1769297027)2 = 3,7 × 10 18− 3,4 × 1018 2,98 × 1018− 3,13 × 1018 = −2 Mean FF

Pada studi kasus ini, terdapat beberapa langkah yang dilakukan untuk menggunakan fungsi ffbase hingga didapatkan nilai estimasinya.

(9)

2. Mengambil variabel yang ingin dijumlahkan

3. Melalukan Perhitungan Package “ffbase”

Sebelumnya telah diketahui bahwa nilai estimator 𝛽 sebesar -2. Jadi, diperoleh nilai estimator 𝛼 sebagai berikut :

(10)

Operasi Perkalian Matriks

Untuk operasi perkalian matriks, diambil studi kasus pencarian nilai estimasi β pada regresi ganda. Data yang digunakan adalah data yang sama pada pembahasan sebelumnya. Data yang digunakan sebagai berikut :

Berdasarkan data di atas, variable dependen (Y) yang diambil untuk estimasi regresi adalah ArrTime, dan variable independen (X1 dan X2) yang diambil untuk estimasi regresi adalah DepTime, dan Distance.

Diketahui rumus estimasi nilai β pada regresi ganda sebagai berikut : 𝜷̂ = (𝑿′𝑿)−𝟏𝑿′𝒀

Berdasarkan rumus di atas, maka langkah awal yang dilakukan adalah membentuk matriks X dengan dimensi N x 3, dan matriks Y dengan dimensi N x 1, dimana N adalah jumlah data yang digunakan.

(11)

Berikut sintaks untuk pembentukan matriks X dan Y 1. Matriks X

2. Matriks Y

Keterangan :

Data[,5], data[,7] dan data[,18] menunjukkan urutan kolom dari variabel-variabel yang diambil pada data. Variabel dependen ArrTime diambil dari data pada kolom ketujuh, sedangkan variabel independen DepTime, dan Distance berturut – turut diambil dari data pada kolom kelima dan kedelapan belas.

Setelah dibentuk matriks X dan Y, maka akan dibentuk matriks (XTX)-1 dan (XTY). Operasi perkalian matriks yang digunakan menggunakan operasi matriks manual pada R, tanpa bantuan packages khusus. Bentuk matriks (XTX)-1 dan (XTY) didapat sebagai berikut :

(12)

1. Matriks (XTX)-1

Karena matriks (XTX) terdapat NA yang kemungkinan disebabkan oleh adanya missing value pada salah satu atau kedua variabel independen, maka terdapat nilai NA pada perkalian XTX. Hal ini mengakibatkan invers dari XTX tidak dapat dihitung.

2. Matriks (XTY)

Hal yang sama terjadi pada perkalian matriks XTY, pada perkalian matriks ini terdapat nilai NA yang kemungkinan disebabkan oleh adanya missing value pada data yang digunakan. Karena pada kedua perkalian matriks ini menghasilkan nilai NA, maka penghitungan nilai estimasi β dengan contoh data ini tidak dapat dilakukan. Namun secara tidak langsung studi kasus ini menunjukkan bahwa operasi perkalian matriks untuk data besar dapat dilakukan secara manual. Selain itu dari studi kasus ini menunjukkan bahwa packages ff dapat digunakan untuk pembentukan matriks.

B. Perbandingan Waktu

Untuk membandingkan proses waktu yang digunakan oleh suatu data dengan atau tanpa menggunakan package ff, digunakan syntax berikut.

ptm <- proctime()

…(syntax yang akan dihitung prosesnya)… proctime – ptm

Digunakan data vektor berukuran 24 (puluhan), 150 (ratusan), 4.974 (ribuan), 39.644

(puluhribuan), dan 1.311.026 (bigdata). Masing-masing data vektor di atas dikenakan proses pembacaan data, operasi sum, dan operasi mean. Hasil (output) pada perbandingan waktu dapat dilihat di lampiran.

(13)

Diperoleh kesimpulan dari perbandingan waktu sebagai berikut. Banyaknya

Data

Lama Waktu (Detik)

Baca Data Sum Mean

Tanpa ff Dengan ff Tanpa ff Dengan ff Tanpa ff Dengan ff Puluhan 0,02 0,04 0,02 0,03 0,01 0,02 Ratusan 0,03 0,04 0,01 0,01 0,02 0,02 Ribuan 0,05 0,11 0,01 0,03 0,02 0,02 Puluhribuan 0,11 0,13 0,01 0,08 0,02 0,02 Big Data 13,45 12,45 0,03 0,02 0,05 0,04 Dari tabel di atas, diperoleh beberapa kesimpulan terkait perbandingan waktunya.

 Lama waktu menggunakan package ff dan tanpa menggunakan ff tidak berbeda secara signifikan. Untuk big data, proses dengan package ff relatif lebih cepat daripada tanpa package ff. Untuk non big data, proses tanpa package ff lebih cepat dari pada dengan package ff.

 Big data yang dimaksud adalah data yang ukurannya sangat besar hingga Ms. Excel tidak bisa membaca. Karena meskipun data besar hingga puluh ribuan, akan tetapi itu belum termasuk big data.

Dari beberapa kesimpulan atas, bisa disimpulkan bahwa package ff lebih baik digunakan hanya untuk big data saja. Jika data masih bisa terbaca oleh excel, maka tidak perlu digunakan package ff.

(14)

BAB III KESIMPULAN

1. Package ff merupakan salah satu package pada R yang digunakan untuk menangani sistem data pada big data.

2. Salah satu package yang menunjang bekerjanya package ff adalah package ffbase. Package ini berisi banyak fungsi dari paket dasar R untuk penggunaan dengan data besar melalui package ff.

3. Fungsi mendasar yang digunakan dalam package ff, yaitu ff dan ffdf. Dikatakan mendasar karena kedua fungsi tersebut digunakan untuk membuat suatu data berbentuk vektor dan matrix (untuk ff) dan data frame (untuk ffdf).

4. Tidak semua aplikasi bisa digunakan untuk membaca apalagi melakukan pengolahan big data. Package ff merupakan salah satu package yang dapat digunakan untuk membaca big data dengan tepat.

5. Pada intinya operasi penjumlahan (sum), perhitungan rata-rata (mean), dan perkalian matrix pada package ff dan tanpa ff sama, perbedaannya hanyalah jenis pada objek yang digunakan. Package ff menggunakan data jenis ff atau ffbase.

6. Package ff lebih baik digunakan hanya untuk big data saja. Jika data masih bisa terbaca oleh excel, maka tidak perlu digunakan package ff.

(15)

LAMPIRAN

Deskripsi Fungsi 1. Fungsi ff

2. Fungsi ffdf

(16)

4. Fungsi mean.ff

Output Perbandingan Waktu 1. Baca Data

a. Puluhan

(17)

c. Ribuan

(18)

e. Big Data

2. Perhitungan Sum a. Puluhan

(19)

c. Ribuan

d. Puluh Ribuan

(20)

3. Perhitungan Mean a. Puluhan

b. Ratusan

(21)

d. Puluh Ribuan

Referensi

Dokumen terkait

Dari hasil angket dan wawancara (Rabu, 20 Januari 2010) penulis kepada responden yang mewakili responden lain pada saat siswa mengembalikan kuesioner yang telah diisi, tanggapan

Router adalah perangkat jaringan yang digunakan untuk membagi protokol kepada anggota jaringan yang lainnya, dengan adanya Router maka sebuah protokol dapat dibagi

Pillay et al (2013) melakukan pengujian penambahan garam pada fiber dengan teknik elektrospining menghasilkan ukuran diameter fiber yang lebih kecil dibandingkan

Masalah rute bus karyawan adalah masalah penentuan rute bus untuk menjemput karyawan dari pos-pos yang sudah ditentukan menuju perusahaan dan mengantarkan karyawan dari

Tabel diatas menggambarkan struktur tabel bobot TOPSIS PPA. Struktur tabel TOPSIS lebih sederhana karena bobot yang diinput oleh user pada penentuan bobot TOPSIS, diinput

Jeda dari pergerakan yang menggambarkan berat dan ukuran objek yang digunakan untuk menjelaskan karakter personal dari objek juga adalah saat dan jumlah waktu dari karakter

Untuk mengetahui exercise Half Semont Manuver lebih baik dari exercise Brandt-doroff Manuver dalam menggurangi keluhan vertigo pada gangguan fungsi Vestibular Posterior

Pengembangan media pembelajaran interaktif berbasis Visual Basic 6.0 pada pokok bahasan Struktur Atom menggunakan metode Research and Development (R&amp;D) dengan model