#Mendefinisikan fungsi newtonr
newtonr <- function (fx, x0=0.5){
#Mendefinisikan Turunan Pertama
fx1 <- deriv(fx,"x")
#Mendefinisikan Turunan Kedua
fx2 <- deriv(D(fx,"x"),"x")
#Inisialisasi Error
e <- 1000
#Memulai loop while yang akan terus berlanjut sampai error (e) lebih kecil atau sama dengan 1e-6
while (e>1e-6){
x <- x0
f1 <- attr(eval(fx1),"gradient")[1]
f2 <- attr(eval(fx2),"gradient")[1]
#Menghitung nilai absolut dari f1 sebagai error (e)
e <- abs(f1)
#Menggunakan metode Newton-Raphson untuk menghitung nilai baru x0 sebagai x0 - f1/f2
x1 <- x0 - f1/f2
#Memperbarui x0 dengan nilai baru x1
x0 <- x1
#Akhir dari Loop While
}
#Mengembalikan nilai x1, yang merupakan estimasi akar dari fungsi fx
return(x1)
}
#Mendefinisikan fungsi fx sebagai sebuah ekspresi matematika
fx <- expression(x^3 - 6*x^2 + 11*x -5)
#Memanggil Fungsi Newton-Raphson
newtonr(fx)
## [1] 1.42265
Jadi nilai dari fungsi persamaan diatas dengan \(x_0= 0.5\) dengan menggunakan metode Newton Raphson adalah 1.42265
a . dengan nama “Mahasiswa” yang berisi atribut :
• nama (bertipe karakter)
• nim (bertipe karakter)
• domisili (bertipe karakter)
#memulai definisi kelas baru dengan nama Mahasiswa
setClass("Mahasiswa",
#mendefinisikan atribut yang akan dimiliki oleh kelas Mahasiswa dan menyimpan data dengan tipe 'character'.
representation (Nama = "character",
NIM = "character",
Domisili = "character"
)) #menutup fungsi setClass.
Mahasiswa1 <- new("Mahasiswa", Nama = "Upin", NIM = "G1401221095", Domisili ="Bandung")
Mahasiswa2 <- new("Mahasiswa", Nama = "Ipin", NIM = "G1401231007", Domisili ="Bandung")
Mahasiswa3 <- new("Mahasiswa", Nama = "Mail", NIM = "G2302221091", Domisili ="Purwakarta")
Mahasiswa4 <- new("Mahasiswa", Nama = "Ehsan", NIM = "G1401456789", Domisili ="Bekasi")
Mahasiswa5 <- new("Mahasiswa", Nama = "Jarjit", NIM = "G5441435678", Domisili ="Jakarta")
setMethod("show",signature(object = "Mahasiswa"),
#Memulai definisi fungsi untuk metode show.
function(object) {
#'cat' digunakan untuk mencetak teks
#Mencetak "Nama:" diikuti oleh nilai slot Nama dari objek Mahasiswa, lalu mencetak karakter newline (\n) untuk pindah ke baris baru
cat("Nama:",object@Nama, "\n")
#Mencetak "NIM:" diikuti oleh nilai slot NIM dari objek Mahasiswa, lalu mencetak karakter newline (\n)
cat("NIM:",object@NIM, "\n")
#Mencetak "Domisili:" diikuti oleh nilai slot Domisili dari objek Mahasiswa, lalu mencetak karakter newline (\n)
cat("Domisili:",object@Domisili, "\n")
} #Menutup definisi fungsi.
)
#menampilkan objek
show(Mahasiswa1)
## Nama: Upin
## NIM: G1401221095
## Domisili: Bandung
show(Mahasiswa2)
## Nama: Ipin
## NIM: G1401231007
## Domisili: Bandung
show(Mahasiswa3)
## Nama: Mail
## NIM: G2302221091
## Domisili: Purwakarta
show(Mahasiswa4)
## Nama: Ehsan
## NIM: G1401456789
## Domisili: Bekasi
show(Mahasiswa5)
## Nama: Jarjit
## NIM: G5441435678
## Domisili: Jakarta
Lakukan visualisasi beserta penjelasan pada suatu dataset yang nantinya akan memuat tentang
a. Penjelasan data yang digunakan (tabel atau link dataset).
Data yang digunakan adalah data harga penutupan saham The Walt Disney Company (DIS) dan Warner Bros. Discovery, inc. (WBD) tahun 2019-2023 yang diperoleh dari https://finance.yahoo.com/
b. Hasil visualisasi dan interpretasi serta c. Lampiran yang berisi kodingan
library(readxl)
saham<-read_excel("C:\\Users\\yulia\\Downloads\\WBD.xlsx")
saham
## # A tibble: 1,258 × 3
## Tanggal WBD DIS
## <dttm> <dbl> <dbl>
## 1 2019-04-17 00:00:00 30.4 132.
## 2 2019-04-18 00:00:00 30.1 132.
## 3 2019-04-22 00:00:00 29.1 132.
## 4 2019-04-23 00:00:00 29.5 133.
## 5 2019-04-24 00:00:00 30.4 135.
## 6 2019-04-25 00:00:00 30.4 137.
## 7 2019-04-26 00:00:00 31.5 140.
## 8 2019-04-29 00:00:00 31.6 139.
## 9 2019-04-30 00:00:00 30.9 137.
## 10 2019-05-01 00:00:00 30.9 136.
## # ℹ 1,248 more rows
library(ggplot2)
## Warning: package 'ggplot2' was built under R version 4.3.3
library(gridExtra)
ggplot() +
geom_line(data = saham, aes(x = Tanggal, y = DIS, color = "Disney")) +
geom_line(data = saham, aes(x = Tanggal, y = WBD * 2, color = "Warner")) +
scale_color_manual(values = c("navy", "darkred")) +
labs(title = "Time Series Data Harga Penutupan Saham The Walt Disney Company dan Warner Bros. Discovery, inc. 2019-2023",
x = "Tahun",
y = "Harga Penutupan Saham The Walt Disney Company") +
theme_minimal() +
theme(axis.title.y = element_text(color = "navy"),
axis.title.y.right = element_text(color = "darkred"),
axis.text.y.right = element_text(color = "darkred")) + scale_y_continuous(sec.axis = sec_axis(~./2, name = "Harga Penutupan Saham Waner Bros. Discovery, inc.")) + labs(color = "Harga Penutupan Saham")
S0aham The Walt Disney Company dan Warner Bros. Discovery, inc. berfluktuasi dalam lima tahun terakhir. Namun, dapat dilihat bahwa harga saham The Walt Disney Company lebih tinggi dibanding Warner Bros. Discovery, inc.. Keduanya mencapai harga tertinggi pada rentang tahun 2021-2022, dimana Warner Bros. Discovery, inc. hampir menyusul saham The Walt Disney Company.