Link: www.kaggle.com pegadaian.co.id www.logammulia.com
Analisis dilakukan menggunakan bahasa pemrograman R dengan beberapa jenis visualisasi data Data yang digunakan terdiri dari beberapa variabel yaitu: Tanggal (Numerik) Tempat (Kategorik) Jenis Emas (Kategorik) Harga/gram (Numerik)
library(ggplot2)
library(ggthemes)
library(modeest)
library(gridExtra)
library(dplyr)
##
## Attaching package: 'dplyr'
## The following object is masked from 'package:gridExtra':
##
## combine
## The following objects are masked from 'package:stats':
##
## filter, lag
## The following objects are masked from 'package:base':
##
## intersect, setdiff, setequal, union
library(scales)
library(readxl)
Mengambil data dari Excel
setwd("C:\\Users\\sarah nabilah\\Downloads")
data <- read_excel ("DATA HARGA EMAS NUM.xlsx")
data$Tanggal <- as.Date(data$Tanggal, format="%d/%m/%Y")
head(data, 28)
## # A tibble: 28 × 4
## Tanggal Tempat `Jenis Emas` `Harga/gram`
## <date> <chr> <chr> <dbl>
## 1 2025-01-01 Pegadaian Ubs 1502000
## 2 2025-01-01 Pegadaian Antam 1553000
## 3 2025-02-01 Pegadaian Ubs 1596000
## 4 2025-02-01 Pegadaian Antam 1661000
## 5 2025-03-01 Pegadaian Ubs 1651000
## 6 2025-03-01 Pegadaian Antam 1672000
## 7 2025-04-01 Pegadaian Ubs 1820000
## 8 2025-04-01 Pegadaian Antam 1852000
## 9 2025-05-01 Pegadaian Ubs 1930000
## 10 2025-05-01 Pegadaian Antam 2044000
## # ℹ 18 more rows
ggplot(data, aes(x=`Tanggal`, y=`Harga/gram`, fill=`Jenis Emas`)) +
geom_bar(stat="identity", position="dodge" ) +
scale_y_continuous(labels = comma) +
labs(title=" Bar Chart Perbandingan Harga Emas per Bulan",
x="`Tanggal`",
y="`Harga/gram`",
fill="`Jenis Emas`")
deskriptif: selama periode pengamatan serta menunjukkan harga Antam lebih tinggi di bandingkan UBS inferensia: pola perbedaan tinggi batang antara kedua jenis emas dapat menjadi indikasi adanya perbedaan rata-rata harga.
ggplot(data, aes(x=`Harga/gram`)) +
geom_histogram(binwidth=500000, fill="pink", color="cyan") +
labs(title="Distribusi Harga Emas",
x="`Harga/gram`",
y="Frekuensi") +
theme_classic()
Secara statistik deskriptif, histogram membantu memahami bentuk distribusi data, apakah data cenderung simetris, miring (skewed), atau memiliki penyebaran tertentu. Dari sudut pandang statistik inferensia, distribusi data yang terlihat pada histogram dapat digunakan untuk menilai apakah data memenuhi asumsi distribusi normal, yang merupakan salah satu syarat dalam beberapa metode inferensia seperti uji t atau analisis regresi.
ggplot(data, aes(x=`Harga/gram`, fill=`Jenis Emas`)) +
geom_density(alpha=0.5) +
scale_y_continuous(labels = comma) +
labs(title="Distribusi Kepadatan Harga Emas",
x="`Harga/gram`",
y="Density")
Dari grafik terlihat kedua jenis emas memiliki pola distribusi yang relatif serupa, namun kurva harga emas Antam cenderung berada pada nilai yang lebih tinggi. Secara statistik deskriptif, density plot memberikan gambaran mengenai pola distribusi dan kepadatan data harga emas. Dari perspektif statistik inferensia, perbedaan posisi kurva antara kedua jenis emas dapat menjadi indikasi adanya perbedaan rata-rata distribusi harga
Boxplot menunjukkan ringkasan statistik harga emas yang meliputi nilai minimum, kuartil pertama (Q1), median, kuartil ketiga (Q3), dan nilai maksimum.
boxplot_data <- ggplot(data) +
geom_boxplot(aes(y = `Harga/gram`, fill = "Rata-rata Harga Emas"), alpha = 0.6) +
theme_minimal() +
labs(title = "Boxplot: Tren Harga Emas Antam vs UBS ", fill = "Jenis Emas")
boxplot_data
Dari grafik terlihat bahwa median harga emas Antam cenderung lebih
tinggi dibandingkan UBS.
Menunjukkan data mentah yang disajikan dalam bentuk dahan daun. Data menunjukkan nilai yang sering muncul yaitu 18 atau sekitar 1,8 - 2 juta untuk harga emas.
stem(data$`Harga/gram`)
##
## The decimal point is 5 digit(s) to the right of the |
##
## 14 | 05
## 16 | 0567
## 18 | 257901347
## 20 | 464
## 22 | 494
## 24 | 0289
## 26 | 5
## 28 | 6
## 30 | 0
pada nilai 30 berpotensi untuk menjadi harga emas selanjutnya saat terjadi harga anomali pasar.
grafik akhir menunjukkan harga emas akan terus naik.
dot_plot <- ggplot(data, aes(x = `Tanggal` , y = `Harga/gram`)) +
geom_point(color = "cyan", size = 2) +
theme_minimal() +
labs(title = "Tren Harga Emas Antam vs UBS Jan 25 - Feb 26", x = "Tanggal", y = "Harga Emas per gram")
dot_plot
grafik menunjukkan linear positif, seirng waktu harga emas akan terus naik, laju pertumbuhan terlihat pada bulan oktober yang meningkat tajam hingga mencapai 3 juta per gram.
data %>%
group_by(`Jenis Emas`) %>%
summarise(
Mean = mean(`Harga/gram`),
Median = median(`Harga/gram`),
Modus = ifelse(length(mfv(`Harga/gram`)) == n(),
NA,
mfv(`Harga/gram`)[1]),
Q1 = quantile(`Harga/gram`, 0.25),
Q3 = quantile(`Harga/gram`, 0.75),
Range = max(`Harga/gram`) - min(`Harga/gram`),
Varians = var(`Harga/gram`),
SD = sd(`Harga/gram`)
)
## # A tibble: 2 × 9
## `Jenis Emas` Mean Median Modus Q1 Q3 Range Varians SD
## <chr> <dbl> <dbl> <lgl> <dbl> <dbl> <dbl> <dbl> <dbl>
## 1 Antam 2092848. 2006000 NA 1863218. 2323750 1307000 1.55e11 3.94e5
## 2 Ubs 2071989 1920500 NA 1832000 2360250 1494000 1.80e11 4.24e5
mean(data$`Harga/gram`)
## [1] 2082418
median(data$`Harga/gram`)
## [1] 1954500
‘seharusnya’ tidak ada modus yang keluar karena tidak ada nilai yang sama di sampel data harga emas.
modus <- function(x) {
uniqx <- unique(x)
uniqx[which.max(tabulate(match(x, uniqx)))]
}
modus (data$`Harga/gram`)
## [1] 1502000
“seharusnya” tidak ada modus yang keluar karena tidak ada nilai yang sering keluar
(nilai paling kecil), Q1 (Kuartil ke satu), Median (nilai tengah), Mean = Q2 (Rata-rata nilai), Q3 (Kuartil ke tiga), dan nilai maksimal (nilai terbesar).
summary(data$`Harga/gram`)
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 1502000 1844000 1954500 2082418 2351750 2996000
var(data$`Harga/gram`)
## [1] 161539455971
sd(data$`Harga/gram`)
## [1] 401919.7