# Penjumlahan
5+2
[1] 7
# Pengurangan
5-2
[1] 3
# Perkalian
5*2
[1] 10
# Pembagian
5/2
[1] 2.5
# Division / Hasil Bagi
5%/%2
[1] 2
# Modulus / Sisa Bagi
5%%2
[1] 1
# Perpangkatan
5^2
[1] 25
# Logaritma
log2(8)
[1] 3
log10(10)
[1] 1
logb(8,2)
[1] 3
# Eksponensial
exp(8)
[1] 2980.958
# Absolut/Mutlak
abs(-8)
[1] 8
# Akar Kuadrat
sqrt(4)
[1] 2
# Trigonometri (Satuan Radian)
sin(pi)
[1] 1.224647e-16
cos(pi)
[1] -1
tan(pi)
[1] -1.224647e-16
R memiliki berbagai fleksibilitas dalam memberikan nama variabel, namun demikian beberapa aturan penamaan variabel yang perlu diketahui adalah sebagai berikut:
A <- 1
B <- 2
print(A)
[1] 1
print(B)
[1] 2
x <- 5
5 -> y
z = 5
x <<- 5
5 ->> y
print(x)
[1] 5
print(y)
[1] 5
print(z)
[1] 5
A <- 1
B <- 2
A == B
[1] FALSE
A > B
[1] FALSE
A < B
[1] TRUE
A >= B
[1] FALSE
A <= B
[1] TRUE
A != B
[1] TRUE
TRUE&&FALSE
[1] FALSE
TRUE||FALSE
[1] TRUE
!TRUE
[1] FALSE
# Logical
my_logical <- TRUE
my_logical1 <- T
my_logical2 <- FALSE
my_logical3 <- F
class(my_logical)
[1] "logical"
logical
class(my_logical1)
[1] "logical"
logical
class(my_logical2)
[1] "logical"
logical
class(my_logical3)
[1] "logical"
logical
# Numeric
my_numeric <- 10
my_numeric1 <- 10.5
class(my_numeric)
[1] "numeric"
numeric
class(my_numeric1)
[1] "numeric"
numeric
# Integer
my_integer <- 20L
my_integer1 <- 15L
class(my_integer)
[1] "integer"
integer
class(my_integer)
[1] "integer"
integer
# Character
my_character <- "Haloo"
my_character1 <- "A"
my_character2 <- 'Hehe'
class(my_character)
[1] "character"
character
class(my_character1)
[1] "character"
character
class(my_character2)
[1] "character"
character
# Complex
my_complex <- 5i
my_complex1 <- 10i + 5
class(my_complex)
[1] "complex"
complex
class(my_complex1)
[1] "complex"
complex
# Raw
my_raw <- charToRaw("Hello World")
class(my_raw)
[1] "raw"
raw
# Vector
my_vector <- c(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20)
my_vector1 <- 1:20
my_vector2 <- seq(1,20)
print(my_vector)
[1] 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
print(my_vector1)
[1] 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
print(my_vector2)
[1] 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
is.vector(my_vector)
[1] TRUE
is.vector(my_vector1)
[1] TRUE
is.vector(my_vector2)
[1] TRUE
# Matrix
my_matrix <- matrix(1:20,4,5,byrow = T)
print(my_matrix)
[,1] [,2] [,3] [,4] [,5]
[1,] 1 2 3 4 5
[2,] 6 7 8 9 10
[3,] 11 12 13 14 15
[4,] 16 17 18 19 20
is.matrix(my_matrix)
[1] TRUE
# Array
my_array <- array(LETTERS,dim=c(4,2,3))
print(my_array)
, , 1
[,1] [,2]
[1,] "A" "E"
[2,] "B" "F"
[3,] "C" "G"
[4,] "D" "H"
, , 2
[,1] [,2]
[1,] "I" "M"
[2,] "J" "N"
[3,] "K" "O"
[4,] "L" "P"
, , 3
[,1] [,2]
[1,] "Q" "U"
[2,] "R" "V"
[3,] "S" "W"
[4,] "T" "X"
is.array(my_array)
[1] TRUE
#List
my_list <- list(TRUE,FALSE,c(1,2,3,4,5),1:20,"Ayam")
print(my_list)
[[1]]
[1] TRUE
[[2]]
[1] FALSE
[[3]]
[1] 1 2 3 4 5
[[4]]
[1] 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
[[5]]
[1] "Ayam"
is.list(my_list)
[1] TRUE
# Factor (Data Kategori Nominal)
my_factor <- factor(c("Ayam","Bebek","Sapi","Kambing","Kucing","Kambing","Ayam","Bebek","Ayam"))
print(my_factor)
[1] Ayam Bebek Sapi Kambing Kucing Kambing Ayam Bebek Ayam
Levels: Ayam Bebek Kambing Kucing Sapi
is.factor(my_factor)
[1] TRUE
# Factor (Data Kategori Ordinal)
my_factor1 <- factor(c("SD","SMA","SD","SMP","SD","SMA","SMA","SD"), ordered = T, levels = c("SD","SMP","SMA"))
print(my_factor1)
[1] SD SMA SD SMP SD SMA SMA SD
Levels: SD < SMP < SMA
is.factor(my_factor1)
[1] TRUE
# Data Frame
nama <- c("Wati", "Budi", "Edi")
nilai <- c(100,90,95)
my_df <- data.frame(nama,nilai)
str(my_df)
'data.frame': 3 obs. of 2 variables:
$ nama : Factor w/ 3 levels "Budi","Edi","Wati": 3 1 2
$ nilai: num 100 90 95
print(my_df)
nama nilai
1 Wati 100
2 Budi 90
3 Edi 95
# Conditional If Else
nilai_saya <- 100
if (nilai_saya >= 85 ) {
nilai_mutu = "A"
} else if (nilai_saya >= 80) {
nilai_mutu = "A-"
} else if (nilai_saya >= 75) {
nilai_mutu = "B+"
} else if (nilai_saya >= 70) {
nilai_mutu = "B"
} else if (nilai_saya >= 65) {
nilai_mutu = "C+"
} else if (nilai_saya >= 60) {
nilai_mutu = "C"
} else if (nilai_saya >= 55) {
nilai_mutu = "D+"
} else if (nilai_saya <= 55) {
nilai_mutu = "D+"
} else {
print("Nilai anda salah !!")
}
print(nilai_mutu)
[1] "A"
# Switch
x <- 5
y <- 5
pilihan <- "/"
switch(pilihan,
"+" = hasil <- x + y,
"-" = hasil <- x - y,
"*" = hasil <- x * y,
"/" = hasil <- x / y
)
print(hasil)
[1] 1
# For Loop
for (i in 1:10) {
print("Saya tidak akan mengulanginya lagi")
}
[1] "Saya tidak akan mengulanginya lagi"
[1] "Saya tidak akan mengulanginya lagi"
[1] "Saya tidak akan mengulanginya lagi"
[1] "Saya tidak akan mengulanginya lagi"
[1] "Saya tidak akan mengulanginya lagi"
[1] "Saya tidak akan mengulanginya lagi"
[1] "Saya tidak akan mengulanginya lagi"
[1] "Saya tidak akan mengulanginya lagi"
[1] "Saya tidak akan mengulanginya lagi"
[1] "Saya tidak akan mengulanginya lagi"
# While Loop
j <- 1
while (j<=10){
print(j)
j <- j+1
}
[1] 1
[1] 2
[1] 3
[1] 4
[1] 5
[1] 6
[1] 7
[1] 8
[1] 9
[1] 10
#Break Keywords
for (i in 1:10){
if (i == 5){
break
}
print(paste0("Indeks ke-",i))
}
[1] "Indeks ke-1"
[1] "Indeks ke-2"
[1] "Indeks ke-3"
[1] "Indeks ke-4"
#Next Keywords
for (i in 1:10){
if (i == 5){
next
}
print(paste0("Indeks ke-",i))
}
[1] "Indeks ke-1"
[1] "Indeks ke-2"
[1] "Indeks ke-3"
[1] "Indeks ke-4"
[1] "Indeks ke-6"
[1] "Indeks ke-7"
[1] "Indeks ke-8"
[1] "Indeks ke-9"
[1] "Indeks ke-10"
# Repeat Loop
k <-1
repeat {
if(k>10) {
break
}
print(paste0("Indeks ke-",k))
k <- k +1
}
[1] "Indeks ke-1"
[1] "Indeks ke-2"
[1] "Indeks ke-3"
[1] "Indeks ke-4"
[1] "Indeks ke-5"
[1] "Indeks ke-6"
[1] "Indeks ke-7"
[1] "Indeks ke-8"
[1] "Indeks ke-9"
[1] "Indeks ke-10"