Dosen Pengampu : Prof. Dr. Suhartono, M.Kom

Lembaga : Universitas Islam Negeri Maulana Malik Ibrahim Malang

Jurusan : Teknik Informatika

Fakultas : Sains dan Teknologi


2.7 VEKTOR

Vektor merupakan kombinasi berbagai nilai (numerik, karakter, logical, dan sebagainya berdasarkan jenis input data) pada objek yang sama. Pengertian vektor secara matematika sendiri Vektor adalah suatu kuantita/besaran yang mempunyai besar dan arah. Secara grafis suatu vektor ditunjukkan sebagai potongan garis yang mempunyai arah. Besar atau kecilnya vektor ditentukan oleh panjang atau pendeknya potongan garis. Sedangkan arah vektor ditunjukkan dengan tanda anak panah.Pada pembahasan berikut kita akan membuat contoh vektor yaitu vektor numerik, vektor karakter, vektor logical, dll.

2.7.1 Membuat Vektor

Vektor dibuat dengan menggunakan fungsi c()(concatenate) seperti yang disajikan pada sintaks berikut:

# membuat vektor numerik
x <- c(6,7.5,2,9)
x # print vektor
## [1] 6.0 7.5 2.0 9.0
# membuat vektor karakter 
y <- c("Mangga", "Jeruk", "Rambutan", "Salak")
y # print vektor
## [1] "Mangga"   "Jeruk"    "Rambutan" "Salak"
# membuat vektor logical 
r <- c("TRUE", "FALSE", "TRUE") 
r # print vektor
## [1] "TRUE"  "FALSE" "TRUE"

Selain Menginput nilai pada vektor kita juga bisa memberikan nama nilai setiap vektor menggunakan fungsi names().

Berikut contoh syntaknya :

# Membuat vektor jumlah buah yang dibeli 
Jumlah <- c(7,4,9,10) 
names(Jumlah) <- c("Apel", "Jeruk", "Rambutan", "Salak")
# Atau 
Jumlah <- c(Apel=7, Jeruk=4, Rambutan=9, Salak=10)
# Print 
Jumlah
##     Apel    Jeruk Rambutan    Salak 
##        7        4        9       10
        **Penting!!!**
        Vektor hanya dapat memuat satu buah jenis data. Vektor hanya dapat 
        mengandung jenis data numerik saja, karakter saja, dll.
        

Untuk menentukan panjang sebuah vektor kita dapat menggunakan fungsi lenght().

length(Jumlah)
## [1] 4

Hasil output 4 diatas itu merujuk pada jumlah nilai yang diinputkan dalam vektor diatas.

2.7.2 Missing Values

Seringkali nilai pada vektor kita tidak lengkap atau terdapat nilai yang hilang (missing value) pada vektor. Missing value pada R dilambangkan oleh NA(not available). Berikut adalah contoh vektor dengan missing value.

Jumlah <- c(Apel=5, Jeruk=NA, Rambutan=6, Salak=7)

Untuk mengecek apakah dalam objek terdapat missing value dapat menggunakan fungsi is.na(). ouput dari fungsi tersebut adalah nilai Boolean. Jika terdapat Missing value, maka output yang dihasilkan akan memberikan nilai TRUE.

is.na(Jumlah)
##     Apel    Jeruk Rambutan    Salak 
##    FALSE     TRUE    FALSE    FALSE
Penting!!!
  1.Selain NA terdapat NaN (not a number) sebagai missing value8.Nilai 
 tersebut muncul ketika fungsi matematika yang digunakan pada proses 
 perhitungan tidak bekerja sebagaimana mestinya.Contoh: 0/0 = NaN
        
  2.is.na() juga akan menghasilkan nilai TRUE pada NaN. Untuk 
  membedakannya dengan NA dapat digunakan fungsi is.nan().

2.7.3 Subset Pada Vektor

Subseting vector terdiri atas tiga jenis, yaitu: positive indexing, Negative Indexing, dan .

  • Positive indexing: memilih elemen vektor berdasarkan posisinya (indeks) dalam kurung siku.
# Subset vektor pada urutan kedua 
Jumlah[2]
## Jeruk 
##    NA
# Subset vektor pada urutan 2 dan 4 
Jumlah[c(2, 4)]
## Jeruk Salak 
##    NA     7

Selain melalui urutan (indeks), kita juga dapat melakukan subset (membuat himpunan bagian) berdasarkan nama elemen vektornya.

Jumlah["Jeruk"]
## Jeruk 
##    NA
Penting!!!
  1.) Indeks pada R dimulai dari
  
  2.) Sehingga kolom atau elemen pertama vektor dimulai dari [1]
  
  • Negative indexing: mengecualikan (exclude) elemen vektor.
# mengecualikan elemen vektor 2 dan 4 
Jumlah[-c(2,4)]
##     Apel Rambutan 
##        5        6
# mengecualikan elemen vektor 1 sampai 3 
Jumlah[-c(1:3)]
## Salak 
##     7
  • Subset berdasarkan vektor logical: Hanya, elemen-elemen yang nilai yang bersesuaian dalam vektor pemilihan bernilai TRUE, akan disimpan dalam subset.
Penting!!!
  1.)panjang vektor yang digunakan untuk subset harus sama.
Jumlah <- c(Apel=5, Jeruk=NA, Rambutan=6, Salak=7)
# selecting vector
merah <- c(TRUE, FALSE, TRUE, FALSE)
# Subset 
Jumlah[merah==TRUE]
##     Apel Rambutan 
##        5        6
# Subset untuk elemen vektor bukan missing value 
Jumlah[!is.na(Jumlah)]
##     Apel Rambutan    Salak 
##        5        6        7

2.7.4 Operasi Matematis Menggunakan Vektor

Jika ingin melakukan operasi dengan vektor, operasi akan diterapkan ke setiap elemen vektor. Contoh disediakan pada sintaks di bawah ini:

pendapatan <- c(2000, 1800, 2500, 3000) 
names(pendapatan) <- c("Anto", "Joni", "vina", "Roni") 
pendapatan
## Anto Joni vina Roni 
## 2000 1800 2500 3000
# Kalikan pendapatan dengan 4 
pendapatan*4
##  Anto  Joni  vina  Roni 
##  8000  7200 10000 12000

Seperti yang dapat dilihat, R mengalikan setiap elemen dengan bilangan pengali. Kita juga dapat mengalikan vektor dengan vektor lainnya.Contohnya disajikan pada sintaks berikut:

# membuat vektor dengan panjang 
# sama dengan dengan vektor pendapatan
coefs <- c(2, 1.5, 1, 3)

# Mengalikan pendapatan dengan vektor coefs 
pendapatan*coefs
## Anto Joni vina Roni 
## 4000 2700 2500 9000

Berdasarkan sintaks tersebut dapat terlihat bahwa operasi matematik terhadap masing-masing vektor dapat berlangsung jika panjang vektornya sama.

Berikut adalah fungsi lain yang dapat digunakan pada operasi matematika vektor.

max(x) # memperoleh nilai maksimum x 
## [1] 9
min(x) # memperoleh nilai minimum x 
## [1] 2
range(x) # memperoleh range vektor x 
## [1] 2 9
length(x) # memperoleh jumlah vektor x
## [1] 4
sum(x) # memperoleh total penjumlahan vektor x
## [1] 24.5
prod(x) # memeperoleh produk elemen vektor x 
## [1] 810
mean(x) # memperoleh nilai mean vektor x 
## [1] 6.125
sd(x) # standar deviasi vektor x 
## [1] 3.010399
var(x) # varian vektor x 
## [1] 9.0625
sort(x) # mengurutkan elemen vektor x dari yang terbesar
## [1] 2.0 6.0 7.5 9.0

Contoh penggunaan fungsi tersebut disajikan beberapa pada sintaks berikut:

# Menghitung range pendapatan 
range(pendapatan)
## [1] 1800 3000
# menghitung rata-rata dan standar deviasi pendapatan 
mean(pendapatan)
## [1] 2325
sd(pendapatan)
## [1] 537.7422
sort(pendapatan)
## Joni Anto vina Roni 
## 1800 2000 2500 3000
length(pendapatan)
## [1] 4

Itulah tadi penjelasan dari vektor mulai dari cara membuat vektor, missing values pada vektor, subset vektor dan operasi matematic pada vektor. Anda dapat menggunakan vektor ini untuk mempermudah dalam soal yang berkaitan dengan vektor.

R Markdown

This is an R Markdown document. Markdown is a simple formatting syntax for authoring HTML, PDF, and MS Word documents. For more details on using R Markdown see http://rmarkdown.rstudio.com.

When you click the Knit button a document will be generated that includes both content as well as the output of any embedded R code chunks within the document. You can embed an R code chunk like this:

summary(cars)
##      speed           dist       
##  Min.   : 4.0   Min.   :  2.00  
##  1st Qu.:12.0   1st Qu.: 26.00  
##  Median :15.0   Median : 36.00  
##  Mean   :15.4   Mean   : 42.98  
##  3rd Qu.:19.0   3rd Qu.: 56.00  
##  Max.   :25.0   Max.   :120.00

Including Plots

You can also embed plots, for example:

Note that the echo = FALSE parameter was added to the code chunk to prevent printing of the R code that generated the plot.