Algoritma & Struktur Data
Antarmuka Data dengan R
| Kontak | : \(\downarrow\) |
| yeni.arwanti@student.matanauniversity.ac.id | |
| https://www.instagram.com/yeninawn/ | |
| RPubs | https://rpubs.com/yeninawn/ |
Pendahuluan
R merupakan bahas apemrograman dan software(perangkat lunak) yang digunakan untuk analisis statistika dan grafik. R menggunakan antarmuka baris perintah, walaupun beberapa antarmuka pengguna grafik pun ada. Dalam R, kita dapat membaca data dari file yang disimpan di luar R. Kita dapat juga menulis data ke dalam file yang akan kami simpan dan akses oleh sistem operasi. R dapat membaca dan menulis ke dalam berbagai format file seperti csv, tct, excel, xml dll. Oleh karena itu, R memiliki kemampuan membaca data atau import dari file dan database. Selain bisa import data, kemmapuan lain adalah eksport data atau hasil analisis data. Tentu ini sangat banyak tipe data yan didukung oleh R dengan bantuan tambahan package yang sesuai.
antarmuka data
Impor/Ekspor CSV
Terdapat tiga cara proses antarmuka program R:
Cara 1
Pertama, pastikan terlebih dahulu direktori ata lintasan dengan memastikan sistem R terhubung dengan komputer dengan menggunakan fungsi getwd(). Fungsi getwd() merupakan get working directory untuk mendapatkan dimanakah posisi lintasan kita berada. Selanjutnya, jika data telah terkoneksi dengan benar, tidak perlu disetting direktorinya. Namun, jika data belum terkoneksi dengan benar dapat menggunakan fungsi setwd().
# Mengecek lintasan data
print(getwd()) # Menemukan lokasi penempatan file(cetak direktori) ## [1] "C:/Users/ASUS/OneDrive/Documents/ASD/ASD1"
getwd() # cetak direktori## [1] "C:/Users/ASUS/OneDrive/Documents/ASD/ASD1"
#setwd("C:/Users/ASUS/OneDrive/Documents/ASD/ASD1/input1") # Mengatur direktori kerja baruKemudian lanjutkan proses impor data csv dengan menggunakan fungsi read.csv(). Fungsi read.csv digunakan untuk membaca file dengan format csv yang ada di direktori kerja kita. menggunakan simbol (,) koma sebagai pemisahnya.
# IMPORT DATA
setwd(getwd()) # mensetting posisi direktori
df1 <- read.csv("C:/Users/ASUS/OneDrive/Documents/ASD/ASD1/input1.csv",sep = ",") # format pemisah koma
df2 <- read.csv("C:/Users/ASUS/OneDrive/Documents/ASD/ASD1/input2.csv",sep = ";") # format pemisah titik komaUntuk mengekspor data menggunakan fungsi write.csv(). Fungsi write.csv() merupakan sebuah perintah yang digunakan untuk menuliskan kembali data dengan format csv. Fungsi write.csv() menggunakan simbol (,) sebagai pemisahnya.
#EKSPOR DATA
write.csv(df1, "C:/Users/ASUS/OneDrive/Documents/ASD/OUTPUTASD1/output1.csv", row.names = TRUE) #Menganggap row names penting maka dipakai row names TRUE
write.csv(df2, "C:/Users/ASUS/OneDrive/Documents/ASD/OUTPUTASD1/output2.csv", row.names = FALSE) #Mengabaikan nama baris maka dipakai row names falseCara 2
Cara kedua mensetting terlebih dahulu getwd() ,kemudian menggunakan fungsi if dan setwd()
(working_directory<-getwd())## [1] "C:/Users/ASUS/OneDrive/Documents/ASD/ASD1"
if (!is.null(working_directory)) setwd(working_directory)Untuk mengimpor dan mengekspor data di cara kedua ini menggunakan fungsi file.path()
#IMPOR DATA
impordata1cara2 <- read.csv(file.path(working_directory, 'input1.csv'))
impordata2cara2 <- read.csv(file.path(working_directory, 'input2.csv'))#EKSPOR DATA
write.csv(impordata1cara2, file.path(working_directory, 'output1.csv'))
write.csv(impordata1cara2, file.path(working_directory, 'output1.csv'))Cara 3
Cara ketiga, cara yang paling dasar dan salah satu cara alternatif tanpa mensetting terlebih dahulu
impordatacara3 <- read.csv(file.choose())Impor/Ekspor Excel
Impor data excel menggunakan format .xls untuk microsoft excel tahun 1997-2003 dan menggunakan format .xlsx untuk microsoft excel tahun 2003-sekarang. Untuk mengimpor data excel menggunakan fungsi read_excel(). Untuk mnegekspor data menggunakan fungsi write_xlsx. Untuk impor data, jika tidak menyebutkan sheet=1 maka otomatis akan terpanggil sheet pertama. Memanggil sheet dapat memakai nomor atau nama sheet.
#install.packages(c("readxl","writexlx")) #menginstall readxl dan writexl
pacman::p_load(readxl, writexl)
#Impor data
impordata1<-read_excel("C:/Users/ASUS/OneDrive/Documents/ASD/ASD1/input4.xls")
impordata2<-read_excel("C:/Users/ASUS/OneDrive/Documents/ASD/ASD1/input3.xlsx", sheet=1)
#Ekspor data
write_xlsx(impordata1, "C:/Users/ASUS/OneDrive/Documents/ASD/OUTPUTASD1/output4.xls")
write_xlsx(impordata2, "C:/Users/ASUS/OneDrive/Documents/ASD/OUTPUTASD1/output3.xlsx")Impor/Ekspor TXT Dan RDS
Untuk format data yang lebih besar (CSV atau XLSV) dibanding format TXT atau file biner RDS akan membutuhkan tambahan waktu untuk mengimpor dan mengekspor datanya. Untuk format txt menggunakan fungsi read.table(). Untuk format rdmpd menggunakan fungsi source(). sedangkan untuk format RDS menggunakan format readRDS().
#IMPOR DATA
importxt <- read.table("C:/Users/ASUS/OneDrive/Documents/ASD/ASD1/input5.txt")
imporrdmpd <- source("C:/Users/ASUS/OneDrive/Documents/ASD/ASD1/input6.rdmpd")
imporrds <- readRDS("C:/Users/ASUS/OneDrive/Documents/ASD/ASD1/input7.rds")
imporascii <- readRDS("C:/Users/ASUS/OneDrive/Documents/ASD/ASD1/input8.ascii")
#EKSPOR DATA
write.table(importxt, "C:/Users/ASUS/OneDrive/Documents/ASD/OUTPUTASD1/output5.txt")
dump("imporrdmpd", "C:/Users/ASUS/OneDrive/Documents/ASD/OUTPUTASD1/output6.rdmpd")
saveRDS(imporrds, "C:/Users/ASUS/OneDrive/Documents/ASD/OUTPUTASD1/output7.rds")
saveRDS(imporascii, "C:/Users/ASUS/OneDrive/Documents/ASD/OUTPUTASD1/output8.ascii", ascii=TRUE)Impor/ekspor XML
XML merupakan bahasa markup yang diciptakan dari W3C(konsorsium World Wide Web) yang digunakan untuk membuat suatu format informasi umum juga menjadi suatu sarana yang berfungsi membagikan format dan data yang digunakan di world wide web, dan di platform lain menggunakan teks ascii.
library("XML")
library("kulife")
library("methods")
#IMPOR DATA XML
imporxml <- xmlParse("C:/Users/ASUS/OneDrive/Documents/ASD/ASD1/input9.xml")
#KONVERSI DATA XML
xml_konversi_df <- xmlToDataFrame(imporxml)
#EKSPOR DATA XML
write.xml(xml_konversi_df, "C:/Users/ASUS/OneDrive/Documents/ASD/ASD1/input9.xml")Impor/ekspor JSON
JSON singkatan dari JavaScript Object Notation. JSON merupakan sebuah format penyimpanan data berdasarkan JavaScript. Mengimpor data JSON menggunakan fungsi fromJSON. Mengonversi data JSON ke data frame menggunakan fungsi as.data.frame. Sedangkan mengekspor data JSON menggunakan fungsi write_json.
library("jsonlite")
#IMPOR DATA JSON
imporjson <- fromJSON("C:/Users/ASUS/OneDrive/Documents/ASD/ASD1/input10.json")
#KONVERSI DATA JSON KE DATA FRAME
json_konversi_df <- as.data.frame(imporjson)
#EKSPOR DATA JSON
write_json(json_konversi_df, "C:/Users/ASUS/OneDrive/Documents/ASD/ASD1/input10.json")Impor Data Dari Web
Untuk mengekstrak data spesifik dari situs websecara terprogram dapat menggunakan program R. Berikut ini salah satu contoh cara mengimpor data dari repositori GitHub:
CSV
imporweb_csv <- read.csv("https://github.com/Bakti-Siregar/dataset/blob/master/Bookdown-Data-Science-for-Beginners/csv1.csv")XLXS
library(rio) # impor data web dari github
install_formats()## [1] TRUE
web_xlsx <-rio::import("https://github.com/Bakti-Siregar/dataset/blob/master/Bookdown-Data-Science-for-Beginners/xlsx1.xlsx?raw=TRUE.csv") Basis Data R
Ketika melakukan komputasi statistik maka akanmembutuhkan wuery SQL yang canggih. Namun dalam R dapat terhubung dengan mudah ke banyak database relasional seperti MySql, Oracle, dll. Kemudian kita ubah basis data tersebut menjadi bingkai data atau data frame. Selanjutnya dilakukan analisa lebih lanjut.
Menambang Data Web
Webscraping Data merupakan proses pengambilan data dari sebuah website. Salah satu teknik webscraping adalah parsing HTML. Parsing HTML yaitu suatu metode yang dilakukan dengan mengirimkan HTTP request kepada server yang menyimpan data website pada data yang ingin kita ekstrak.Dengan teknik ini, kita dapat melakukan webscraping tidak hanya pada halaman website yang statis ,namun juga dinamis. Disisi lain, parsing HTML juga memungkinkan kita menyalin data dalam jumlah yang besar.