R Fundamental for Data Science

Jadi, apa itu R?

Wulan Sopiani
14 min readFeb 17, 2021

R adalah nama sebuah bahasa pemrograman sekaligus software untuk pengolahan data dan grafik. R sangat popular saat ini karena memiliki jumlah fitur yang sangat besar — mencapai puluhan ribu fitur.

Mulai dari membaca file teks, membaca database, menghasilkan berbagai grafik, menghasilkan dashboard yang menarik, sampai ke penggunaan machine learning — semuanya tersedia di R.

Selain itu, R bersifat gratis dan open source. Artinya, dengan R kita tidak perlu biaya lisensi macam-macam untuk menggunakannya secara bebas dan luas.

Data Scientist dan R

Dunia saat ini penuh dengan data, akibat meluasnya penggunaan aplikasi smartphone dan juga pemakaian sistem pada seluruh perusahaan. Namun data-data ini belum tentu menjadi informasi yang dibutuhkan oleh organisasi dan bisnis bila tidak bisa diolah dengan baik.

Sekarang muncul sebuah disiplin ilmu untuk menjawab permasalahan tersebut, ilmu yang mempelajari bagaimana mengolah data menjadi informasi yang berguna, yaitu data science.

Seseorang yang bekerja dengan dibekali ilmu data science dinamakan data scientist — saat ini merupakan salah satu profesi paling hot menurut LinkedIn.

Untuk membantu pekerjaannya, data scientist perlu dibekali dengan aplikasi yang bagus — R dengan segala kekayaan adalah jawabannya.

Kenapa Data Scientist menggunakan R?

Apa sebenarnya yang membuat para data scientist tertarik belajar dan menggunakan R?

Ada empat alasan utama, yaitu:

  • Lebih Mudah Dipelajari (Easier): R relatif lebih mudah dipelajari dibandingkan dengan bahasa lain, seperti Java, C#, Javascript, dan lain-lain.
  • Lebih Cepat (Faster): Banyak fungsi R memberikan hasil jauh lebih cepat dibandingkan dengan aplikasi lain.
    Contoh: R dapat menghasilkan berbagai visualisasi yang menarik dalam waktu singkat, sehingga data scientist dapat jauh lebih produktif dalam memahami data dan menghasilkan informasi.
  • Lebih kaya fitur (Richer): Dengan puluhan ribu fitur yang terus berkembang, hampir semua permasalahan data dapat dijawab oleh R. Sebagai contoh, untuk mengatasi permasalahan optimasi stok di e-commerce, R memiliki fungsi menghasilkan rekomendasi product packaging.
  • Telah terbukti (Proven): R sudah digunakan oleh banyak data scientist perusahaan besar seperti Anz, Uber, dan Facebook dan memberikan solusi riil. Tidak heran jika akhirnya dari kisah sukses ini, banyak lowongan data scientist mencamtumkan R sebagai syarat keterampilan yang harus dimiliki.

Teks, Angka dan Rumus Perhitungan

R merupakan bahasa yang berisi berbagai perintah, dari perintah melakukan perhitungan matematika sederhana sampai menghasilkan grafik.

Perintah ini bisa sangat singkat, hanya berisi angka atau teks saja. Sebagai contoh, cobalah ketik angka 9 dan teks “Budi” berikut pada Code Editor.

9
"Budi"
9*3

Menampilkan dengan Fungsi Print

Pada praktek sebelumnya kita bisa menampilkan teks dan angka dengan menuliskannya secara langsung, tapi akan lebih baik apabila kita menggunakan fungsi bernama print.

print("Hello World")
print(3 + 4)

Jika dijalankan akan muncul hasil berikut.

> print("Hello World")
[1] "Hello World"

> print(3 + 4)
[1] 7

Huruf Besar, Huruf Kecil dan Format Angka

Huruf besar dan huruf kecil sangat perlu diperhatikan pada bahasa pemograman R, atau dengan kata lain R sangat case sensitive. Sebagai contoh: “Budi” dan “BUDI” adalah dua teks yang berbeda.

Format angka — termasuk di penulisan tanggal — jug sangat berpengaruh. Sebagai contoh:

  • 01 dan 1 adalah dua angka yang dianggap berbeda pada saat pengiriman jawaban.
  • “12–01–1987” dan “12–1–1987” adalah hal berbeda pada saat mengirimkan jawaban.

Function

Kali ini kita akan belajar apa yang dinamakan function. Function adalah perintah R yang memiliki dan menerima beberapa nilai teks maupun angka sebagai parameternya.

Mari kita lihat satu fuction yang akan kita sering kita gunakan, yaitu c. Fungsi c ini digunakan untuk membuat urutan angka maupun teks.

Misalnya di sini kita akan membuat perintah c(5:10), perintah ini berguna untuk membuat rangkaian angka dari 5 s/d 10.

c(5:10)

output:

> c(5:10)
[1] 5 6 7 8 9 10

Variable

Angka-angka yang kita gunakan dapat juga disimpan dengan sesuatu yang dinamakan variable. Variable memiliki nama yang dapat kita definisikan dan gunakan untuk mengambil nilainya kembali.

Perhatikan code berikut:

budi_berat_kg <- 68santi_berat_kg <- 54.5budi_berat_kgsanti_berat_kg

output:

> budi_berat_kg <- 68

> santi_berat_kg <- 54.5

> budi_berat_kg
[1] 68

> santi_berat_kg
[1] 54.5

Penjelasan Hasil

Comment pada R

Comment atau komentar adalah teks yang bisa dimasukkan di R, tapi tidak dianggap sebagai code yang bisa dieksekusi. Comment ini biasanya digunakan sebagai catatan untuk menjelaskan potongan code yang ada.

Membuat comment sangat mudah. Caranya adalah menuliskan tanda pagar (#) yang kemudian diikuti dengan tulisan apapun.

Berikut adalah contoh perhitungan matematika yang diikuti oleh sebuah comment.

2 + 2 #Ini adalah baris komentar

output:

> 2 + 2 #Ini adalah baris komentar
[1] 4

Perhatikan bahwa comment “Ini adalah baris komentar” tidak dimengerti oleh R dan tidak menghasilkan apapun. Hal yang berbeda dengan perhitungan “2 + 2” yang tetap menghasilkan output angka 4.

Vector

Vector adalah jenis data di R dengan struktur yang menyimpan deretan nilai (lebih dari satu nilai) dengan tipe data sama. Jadi, jika tipe datanya teks maka seluruh data harus bertipe teks. Demikian juga jika tipenya angka maka seluruh data angka semua.

Vector didefinisikan dengan nama function yang memilki satu huruf saja: c. Sebagai contoh untuk membuat vector yang isinya angka dengan nilai 4, 5 dan 6, maka perintahnya adalah c(4, 5, 6).

# Ini adalah contoh vector untuk angka numerik dengan 3 data c(4, 5, 6)
c(4, 5, 6)
# Variable bernama angka dengan input berupa vector
angka <- c(4, 5, 6)
# Tampilkan isi variable angka dengan fungsi print
print(angka)

output:

> # Ini adalah contoh vector untuk angka numerik dengan 3 data c(4, 5, 6)
> c(4, 5, 6)
[1] 4 5 6

> # Variable bernama angka dengan input berupa vector
> angka <- c(4, 5, 6)

> # Tampilkan isi variable angka dengan fungsi print
> print(angka)
[1] 4 5 6

Deretan Nilai dengan Operator :

Operator : atau titik dua adalah operator yang digunakan untuk mempersingkat penulisan dari nilai-nilai vector yang berurutan. Sebagai contoh, perintah c(1, 2, 3, 4, 5, 6, 7, 8, 9, 10) yang membentuk vector dengan angka 1 sampai dengan 10 dapat dipersingkat dengan c(1:10).

angka1 <- c(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
print(angka1)
angka2 <- c(1:10)
print(angka2)

output:

> angka1 <- c(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)

> print(angka1)
[1] 1 2 3 4 5 6 7 8 9 10

> angka2 <- c(1:10)

> print(angka2)
[1] 1 2 3 4 5 6 7 8 9 10

Vector dengan Isi Teks

Selain angka, vector juga bisa diisi dengan teks. Misal kita membuat vector yang isinya tiga nama orang dan disimpan sebagai variable nama_mahasiswa sebagai berikut.

# Variable nama_mahasiswa dengan input character
nama_mahasiswa <- c("Amira","Budi","Charlie")
print(nama_mahasiswa)

output:

> # Variable nama_mahasiswa dengan input character
> nama_mahasiswa <- c("Amira","Budi","Charlie")

> print(nama_mahasiswa)
[1] "Amira" "Budi" "Charlie"

Index dan Accessor pada Vector

  • Untuk mengambil isi vector, kita harus mengambil dari posisinya. Posisi ini diwakili oleh angka urutan — yang disebut sebagai index.
  • Cara penulisan index di variable adalah angka yang diapit dengan kurung siku tunggal atau ganda. Penulisan ini selanjutnya disebut sebagai accessor.
  • Jika index yang ingin diambil lebih dari satu, maka hanya boleh menggunakan kurung siku tunggal.

Contoh:

# Buat vector variable bernama angka yang isinya 20 s/d 30
angka <- c(20:30)
print(angka)
# Tampilkan isi variable angka pada posisi ke 3
print(angka[3])
# Tampilkan isi variable angka pada posisi ke 5
print(angka[[5]])
# Tampilkan isi variable angka pada posisi ke 4 s/d 6
print(angka[4:6])
# Buat variable kode_prodi sesuai soal di bawah ini
kode_prodi <- c("DKV","ILKOM","ICT")
# Tampilkan isi indeks ketiga dari kode_prodi
print(kode_prodi[3])

output:

> # Buat vector variable bernama angka yang isinya 20 s/d 30
> angka <- c(20:30)

> print(angka)
[1] 20 21 22 23 24 25 26 27 28 29 30

> # Tampilkan isi variable angka pada posisi ke 3
> print(angka[3])
[1] 22

> # Tampilkan isi variable angka pada posisi ke 5
> print(angka[[5]])
[1] 24

> # Tampilkan isi variable angka pada posisi ke 4 s/d 6
> print(angka[4:6])
[1] 23 24 25

> # Buat variable kode_prodi sesuai soal di bawah ini
> kode_prodi <- c("DKV","ILKOM","ICT")

> # Tampilkan isi indeks ketiga dari kode_prodi
> print(kode_prodi[3])
[1] "ICT"

Named Vector

Selain dengan angka, indeks pada vector juga dapat dilengkapi dengan nama untuk tiap elemennya dengan menggunakan format penulisan name=value.

Mari kita langsung praktekkan dengan contoh, ketik named vector berikut — dimana kita membuat vector angka dengan tiap urutan diberi nama.

nilai <- c(statistik = 89, fisika = 95, ilmukomunikasi = 100)

Dengan mudah Anda mungkin bisa melihat bahwa vector ini mewakili nilai-nilai untuk mata kuliah “statistik”, “fisika” dan “ilmukomunikasi”.

Jika berhasil, maka akan muncul output berikut,

> print(nilai)
statistik fisika ilmukomunikasi
89 95 100

Perhatikan terdapat perbedaan tampilan output named vector ini dengan tampilan output vector sebelumnya — yaitu sudah tidak ada awalan [1].

Nah, sekarang kita akan mengambil dan menampilkan nilai pada vector untuk nama “fisika”.

print(nilai["fisika"])

ouput:

> print(nilai["fisika"])
fisika
95

Sebagai latihan sehingga kita akan mencoba membuat variable named vector profil dengan input berikut:

  • nama = “Budi”
  • tempat_tinggal = “Jakarta”
  • tingkat_pendidikan = “S1”

Kemudian tampilkan variable profil ini dengan menggunakan fungsi print.

#Buat variable profil sesuai permintaan soal
profil <- c(nama="Budi",tempat_tinggal="Jakarta",tingkat_pendidikan="S1")
#Tampilkan variable profil
print(profil)

output:

> #Buat variable profil sesuai permintaan soal
> profil <- c(nama="Budi",tempat_tinggal="Jakarta",tingkat_pendidikan="S1")

> #Tampilkan variable profil
> print(profil)
nama tempat_tinggal tingkat_pendidikan
"Budi" "Jakarta" "S1"

List

List adalah jenis data di R yang mirip dengan vector, perbedaannya adalah list dapat menyimpan lebih dari satu jenis data.Untuk memasukkan isi ke dalam struktur data ini kita gunakan function list.

Contoh:

# List disimpan dalam variable dengan nama list_random
list_random <- list(2, "Budi", 4)
# Menampilkan isi list
list_random
# List disimpan dalam variable dengan nama dati2
dati2 <- list(nama = "Denpasar", propinsi = "Bali")
# Menampilkan isi list dati2
dati2
# Buat variable kota sesuai permintaan soal
kota <- list(nama_kota = "Makassar", propinsi = "Sulawesi Selatan", luas_km2 = 199.3)
# Tampilkan isi variable list kota
print(kota)

output:

> # List disimpan dalam variable dengan nama list_random
> list_random <- list(2, "Budi", 4)

> # Menampilkan isi list
> list_random
[[1]]
[1] 2

[[2]]
[1] "Budi"

[[3]]
[1] 4


> # List disimpan dalam variable dengan nama dati2
> dati2 <- list(nama = "Denpasar", propinsi = "Bali")

> # Menampilkan isi list dati2
> dati2
$nama
[1] "Denpasar"

$propinsi
[1] "Bali"


> # Buat variable kota sesuai permintaan soal
> kota <- list(nama_kota = "Makassar", propinsi = "Sulawesi Selatan", luas_km2 = 199.3)

> # Tampilkan isi variable list kota
> print(kota)
$nama_kota
[1] "Makassar"

$propinsi
[1] "Sulawesi Selatan"

$luas_km2
[1] 199.3

List Index

Untuk mengambil isi list, kita bisa mengambil dari posisi index-nya, ketentuan dan caranya sama persis dengan vector.

Contoh: Untuk mengambil posisi kedua dari variable list list_saya kita bisa gunakan

list_saya[2]

atau

list_saya[[2]]

# Membentuk list dengan 2 angka dan 1 character
list_saya <- list(2, "Budi", 4)
# Menampilkan index kedua dengan aksesor kurung siku tunggal
list_saya[2]
# Menampilkan index kedua dengan aksesor kurung siku ganda
list_saya[[2]]
# Menampilkan index kedua s/d ketiga
list_saya[2:3]

output:

> # Membentuk list dengan 2 angka dan 1 character
> list_saya <- list(2, "Budi", 4)

> # Menampilkan index kedua dengan aksesor kurung siku tunggal
> list_saya[2]
[[1]]
[1] "Budi"

> # Menampilkan index kedua dengan aksesor kurung siku ganda
> list_saya[[2]]
[1] "Budi"

> # Menampilkan index kedua s/d ketiga
> list_saya[2:3]
[[1]]
[1] "Budi"

Data Frame

Data frame adalah jenis struktur data yang dirancang untuk representasi table, yang terdiri dari banyak kolom dengan tiap kolom berisi list ataupun vector dengan jumlah data yang sama.

Untuk membuat data frame kita bisa gunakan function data.frame.

contoh:

#Membuat dua variable vector
fakultas <- c("Bisnis", "D3 Perhotelan", "ICT", "Ilmu Komunikasi", "Seni dan Desain")
jumlah_mahasiswa <- c(260, 28, 284, 465, 735)
#Membuat data frame dari kedua vector di atas
info_mahasiswa <- data.frame(fakultas, jumlah_mahasiswa)
#Melihat isi data frame
info_mahasiswa

output:

> #Membuat dua variable vector
> fakultas <- c("Bisnis", "D3 Perhotelan", "ICT", "Ilmu Komunikasi", "Seni dan Desain")

> jumlah_mahasiswa <- c(260, 28, 284, 465, 735)

> #Membuat data frame dari kedua vector di atas
> info_mahasiswa <- data.frame(fakultas, jumlah_mahasiswa)

> #Melihat isi data frame
> info_mahasiswa
fakultas jumlah_mahasiswa
1 Bisnis 260
2 D3 Perhotelan 28
3 ICT 284
4 Ilmu Komunikasi 465
5 Seni dan Desain 735

Cara Akses Data Frame

Data frame memiliki banyak kolom dan bisa diakses dengan nama kolom yang digunakan. Caranya adalah menggunakan accessor dengan tanda $ yang diikuti dengan nama kolom.

Contoh:

#Membuat tiga variable vector
fakultas <- c("Bisnis", "D3 Perhotelan", "ICT", "Ilmu Komunikasi", "Seni dan Desain")
jumlah_mahasiswa <- c(260, 28, 284, 465, 735)
akreditasi <- c("A","A","B","A","A")
#Membuat data frame dari kedua vector di atas
info_mahasiswa <- data.frame(fakultas, jumlah_mahasiswa, akreditasi)
#Menampilkan kolom jumlah_mahasiswa
info_mahasiswa$jumlah_mahasiswa
#Menampilkan kolom fakultas
info_mahasiswa$fakultas

output:

> #Membuat tiga variable vector
> fakultas <- c("Bisnis", "D3 Perhotelan", "ICT", "Ilmu Komunikasi", "Seni dan Desain")

> jumlah_mahasiswa <- c(260, 28, 284, 465, 735)

> akreditasi <- c("A","A","B","A","A")

> #Membuat data frame dari kedua vector di atas
> info_mahasiswa <- data.frame(fakultas, jumlah_mahasiswa, akreditasi)

> #Menampilkan kolom jumlah_mahasiswa
> info_mahasiswa$jumlah_mahasiswa
[1] 260 28 284 465 735

> #Menampilkan kolom fakultas
> info_mahasiswa$fakultas
[1] Bisnis D3 Perhotelan ICT Ilmu Komunikasi
[5] Seni dan Desain
Levels: Bisnis D3 Perhotelan ICT Ilmu Komunikasi Seni dan Desain

Package ggplot2

Kita telah mampu menggunakan banyak perintah yang masih dalam paket standard di R. Untuk kebanyakan kasus, fungsi-fungsi standard ini tidak cukup.

Nah, untuk fungsi yang lebih powerful seperti menghasilkan grafik yang advanced — kita perlu menggunakan apa yang dinamakan package.

Untuk menggunakan package ggplot2 cukup dengan mengetikkan code berikut:

library("ggplot2")

Contoh penggunaan ggplot, di sini kita akan menampilkan grafik jumlah mahasiswa berdasarkan fakultas di salah satu universitas di Tangerang.

fakultas <- c("Bisnis", "D3 Perhotelan", "ICT", "Ilmu Komunikasi", "Seni dan Desain")
jumlah_mahasiswa <- c(260, 28, 284, 465, 735)
akreditasi <- c("A","A","B","A","A")
info_mahasiswa <- data.frame(fakultas, jumlah_mahasiswa, akreditasi)
info_mahasiswa
#Menggunakan package ggplot2
library("ggplot2")
#Membuat kanvas
gambar <- ggplot(info_mahasiswa, aes(x=fakultas, y=jumlah_mahasiswa, fill=fakultas))
gambar <- gambar + geom_bar(width=1, stat="identity")
gambar

output:

dari grafik tersebut, terlihat Seni dan Desain adalah fakultas paling favorit dengan jumlah mahasiswa terbanyak.

Membuat Grafik Sebaran Mahasiswa (1)

Pada praktek kali ini, kita akan menghasilkan bar chart sederhana dengan menggunakan variable data frame bernama info_mahasiswa yang kita hasilkan pada subbab “Vector, List dan Data Frame”. Variable ini masih bersifat statis atau hard code, artinya data frame ini bukan berdasarkan pembacaan dari suatu file atau database.

Cara membuat grafik di R bisa menggunakan banyak cara, salah satunya dengan library ggplot2 — dimana kita menggambar chart secara bertahap, yaitu dengan konsep layering (lapisan demi lapisan). Lapisan pertama kita ibaratkan sebagai “kanvas” lukisan, dan untuk membuat “kanvas” pada contoh di code editor, kita gunakan fungsi yang namanya ggplot.

gambar <- ggplot(info_mahasiswa, aes(x=fakultas, y=jumlah_mahasiswa, fill=fakultas))

Disini terlihat hasil ggplot2 disimpan pada variable gambar. Variable ini yang akan menyimpan seluruh grafik dan digunakan untuk menggambar ketika digunakan sendiri pada code editor dengan perintah berikut.

gambar

Penambahan bentuk, warna dan ukuran dilakukan dengan menggunakan tanda operator plus ( + ) diikuti fungsi terkait. Sebagai contoh, untuk menggambar bentuk bar chart di atas "kanvas" kita gunakan fungsi geom_barSebagai contoh, untuk menggambar bar chart di atas "kanvas" kita gunakan fungsi

gambar <- gambar + geom_bar(width=1, stat="identity")

Berikut adalah penjelasan lengkap dari code:

Kita juga dapat menambahkan judul pada grafik, menambahkan caption pada sumbu X dan sumbu Y grafik, seperti pada contoh code berikut:

#Membuat dua vector
fakultas <- c("Bisnis", "D3 Perhotelan", "ICT", "Ilmu Komunikasi", "Seni dan Desain")
jumlah_mahasiswa <- c(260, 28, 284, 465, 735)
akreditasi <- c("A","A","B","A","A")
#Buat data frame dari ketiga vector di atas
info_mahasiswa <- data.frame(fakultas, jumlah_mahasiswa, akreditasi)
info_mahasiswa
#Menggunakan package ggplot2
library(ggplot2)
#Membuat kanvas
gambar <- ggplot(info_mahasiswa, aes(x=fakultas, y=jumlah_mahasiswa, fill=fakultas))
#Menambahkan objek bar chart, simpan kembali sebagai variable gambar
gambar <- gambar + geom_bar(width=1, stat="identity")
#Menambahkan judul grafik
gambar <- gambar + ggtitle("Jumlah Mahasiswa per Fakultas")
#Menambahkan caption pada sumbu x
gambar <- gambar + xlab("Nama Fakultas")
#Menambahkan caption pada sumbu y
gambar <- gambar + ylab("Jumlah Mahasiswa")
#Menggambar grafik
gambar

Membaca File Excel

Banyak pengolahan data di R harus membaca dari file Excel. Pada contoh kali ini, kita akan menggunakan file yang berisi data jumlah mahasiswa per angkatan per tahun seperti pada tampilan berikut.

File tersebut bernama mahasiswa.xlsx, dan akan kita baca dengan fungsi read.xlsx dari package openxlsx dengan cara berikut.

library(openxlsx)
mahasiswa <- read.xlsx("https://dqlab.id/mahasiswa.xlsx",sheet = "Sheet 1")

Dari code di atas, file yang dibaca dengan fungsi read.xlsx dan kemudian disimpan sebagai variable mahasiswa (yang merupakan tipe data frame). File yang dibaca adalah “mahasiswa.xlsx” pada sheet “Sheet 1”.

#Menggunakan package ggplot2
library(ggplot2)
#Menggunakan package openxlsx
library(openxlsx)
#Membaca file mahasiswa.xlsx
mahasiswa <- read.xlsx("https://academy.dqlab.id/dataset/mahasiswa.xlsx",sheet = "Sheet 1")
#Menampilkan data
print(mahasiswa)
#Menampilkan kolom Prodi
print(mahasiswa$Prodi)

output:

> #Menggunakan package ggplot2
> library(ggplot2)

> #Menggunakan package openxlsx
> library(openxlsx)

> #Membaca file mahasiswa.xlsx
> mahasiswa <- read.xlsx("https://academy.dqlab.id/dataset/mahasiswa.xlsx",sheet = "Sheet 1")

> #Menampilkan data
> print(mahasiswa)
ANGKATAN Fakultas Prodi Kode JUMLAH
1 2015 Bisnis Akuntansi AKUN 88
2 2016 Bisnis Akuntansi AKUN 85
3 2017 Bisnis Akuntansi AKUN 103
4 2016 Seni dan Desain Arsitek AR 28
5 2017 Seni dan Desain Arsitek AR 45
6 2015 Seni dan Desain Desain Komunikasi Visual DKV 279
7 2016 Seni dan Desain Desain Komunikasi Visual DKV 314
8 2017 Seni dan Desain Desain Komunikasi Visual DKV 337
9 2015 Seni dan Desain Film dan Televisi FTV 284
10 2016 Seni dan Desain Film dan Televisi FTV 274
11 2017 Seni dan Desain Film dan Televisi FTV 300
12 2015 Ilmu Komunikasi Ilmu Komunikasi ILKOM 499
13 2016 Ilmu Komunikasi Ilmu Komunikasi ILKOM 275
14 2017 Ilmu Komunikasi Ilmu Komunikasi ILKOM 313
15 2015 Ilmu Komunikasi Jurnalistik JR 1
16 2016 Ilmu Komunikasi Jurnalistik JR 251
17 2017 Ilmu Komunikasi Jurnalistik JR 186
18 2015 Bisnis Manajemen MAN 169
19 2016 Bisnis Manajemen MAN 163
20 2017 Bisnis Manajemen MAN 160
21 2017 D3 Perhotelan Perhotelan HTL 28
22 2015 ICT Sistem Informasi SI 104
23 2016 ICT Sistem Informasi SI 95
24 2017 ICT Sistem Informasi SI 113
25 2015 ICT Sistem Komputer SK 20
26 2016 ICT Sistem Komputer SK 20
27 2017 ICT Sistem Komputer SK 18
28 2016 ICT Teknik Elektro TE 4
29 2017 ICT Teknik Elektro TE 7
30 2016 ICT Teknik Fisika TF 7
31 2017 ICT Teknik Fisika TF 16
32 2015 ICT Teknik Informatika TI 125
33 2016 ICT Teknik Informatika TI 168
34 2017 ICT Teknik Informatika TI 164
35 2017 ICT Teknik Informatika Dual Degree TID 6

> #Menampilkan kolom Prodi
> print(mahasiswa$Prodi)
[1] "Akuntansi" "Akuntansi"
[3] "Akuntansi" "Arsitek"
[5] "Arsitek" "Desain Komunikasi Visual"
[7] "Desain Komunikasi Visual" "Desain Komunikasi Visual"
[9] "Film dan Televisi" "Film dan Televisi"
[11] "Film dan Televisi" "Ilmu Komunikasi"
[13] "Ilmu Komunikasi" "Ilmu Komunikasi"
[15] "Jurnalistik" "Jurnalistik"
[17] "Jurnalistik" "Manajemen"
[19] "Manajemen" "Manajemen"
[21] "Perhotelan" "Sistem Informasi"
[23] "Sistem Informasi" "Sistem Informasi"
[25] "Sistem Komputer" "Sistem Komputer"
[27] "Sistem Komputer" "Teknik Elektro"
[29] "Teknik Elektro" "Teknik Fisika"
[31] "Teknik Fisika" "Teknik Informatika"
[33] "Teknik Informatika" "Teknik Informatika"
[35] "Teknik Informatika Dual Degree"

Membuat Grafik Sebaran Mahasiswa (2)

Setelah memiliki kemampuan membaca sumber data dari luar yaitu file Excel yang berisi data jumlah mahasiswa, kita akan kembali menghasilkan grafik sebaran yang sudah kita lakukan sebelumnya — tapi kali ini dengan hasil pembacaan tersebut.

library(ggplot2)
#Menggunakan package openxlsx
library(openxlsx)
#Membaca file mahasiswa.xlsx
mahasiswa <- read.xlsx("https://academy.dqlab.id/dataset/mahasiswa.xlsx",sheet = "Sheet 1")
#Membuat kanvas
gambar <- ggplot(mahasiswa, aes(x=Fakultas, y=JUMLAH, fill=Fakultas))
#Menambahkan objek bar chart, simpan kembali sebagai variable gambar
gambar <- gambar + geom_bar(width=1, stat="identity")
#Menggambar grafik
gambar

output:

Berikut merupakan perbedaan code pada Grafik Sebaran Mahasiswa (1) dan Grafik Sebaran Mahasiswa (2)

--

--