Distribusi uniform adalah distribusi di mana semua nilai dalam interval tertentu memiliki probabilitas yang sama.
# Simulasi 1000 variabel random dari distribusi uniform
set.seed(123) # Set seed untuk reproducibility
n <- 1000
uniform_data <- runif(n, min = 0, max = 1)
# Plot histogram
hist(uniform_data, breaks = 30, main = "Histogram Distribusi Uniform", xlab = "Nilai", col = "lightblue")
runif(n, min, max) digunakan untuk menghasilkan n variabel random dari
distribusi uniform dengan rentang min hingga max. Histogram menunjukkan
bahwa nilai-nilai tersebar merata antara 0 dan 1, sesuai dengan sifat
distribusi uniform.
Distribusi binomial menggambarkan jumlah sukses dalam n percobaan independen dengan probabilitas sukses p.
# Simulasi 1000 variabel random dari distribusi binomial
n_trials <- 10 # Jumlah percobaan
p_success <- 0.5 # Probabilitas sukses
binomial_data <- rbinom(n, size = n_trials, prob = p_success)
# Plot histogram
hist(binomial_data, breaks = 30, main = "Histogram Distribusi Binomial", xlab = "Jumlah Sukses", col = "lightgreen")
rbinom(n, size, prob) digunakan untuk menghasilkan n variabel random
dari distribusi binomial dengan size percobaan dan probabilitas sukses
prob. Histogram menunjukkan distribusi jumlah sukses, yang berbentuk
simetris karena p = 0.5.
Distribusi normal adalah distribusi kontinu yang berbentuk lonceng, dengan mean mu dan standar deviasi sigma.
# Simulasi 1000 variabel random dari distribusi normal
mu <- 0 # Mean
sigma <- 1 # Standar deviasi
normal_data <- rnorm(n, mean = mu, sd = sigma)
# Plot histogram
hist(normal_data, breaks = 30, main = "Histogram Distribusi Normal", xlab = "Nilai", col = "lightpink")
rnorm(n, mean, sd) digunakan untuk menghasilkan n variabel random dari
distribusi normal dengan mean mu dan standar deviasi sigma. Histogram
menunjukkan distribusi berbentuk lonceng, yang khas untuk distribusi
normal.
lambda <- 3 # Parameter lambda
poisson_data <- rpois(n, lambda)
hist(poisson_data, breaks = 30, main = "Histogram Distribusi Poisson", xlab = "Jumlah Kejadian", col = "lightyellow")
Distribusi Poisson digunakan untuk memodelkan jumlah kejadian langka
dalam interval waktu atau ruang. Histogram menunjukkan distribusi yang
miring ke kanan, yang khas untuk distribusi Poisson dengan lambda
kecil.
rate <- 1 # Parameter rate
exp_data <- rexp(n, rate)
hist(exp_data, breaks = 30, main = "Histogram Distribusi Eksponensial", xlab = "Nilai", col = "lightcoral")
Distribusi eksponensial digunakan untuk memodelkan waktu antara kejadian
dalam proses Poisson. Histogram menunjukkan distribusi yang miring ke
kanan, dengan nilai-nilai yang semakin kecil semakin sering muncul.
# Simulasi pendapatan bulanan
set.seed(123)
n_employees <- 500
mean_income <- 10000000
sd_income <- 2000000
income_data <- rnorm(n_employees, mean = mean_income, sd = sd_income)
# 1. Rata-rata pendapatan simulasi
mean_simulated <- mean(income_data)
cat("Rata-rata pendapatan simulasi:", mean_simulated, "\n")
## Rata-rata pendapatan simulasi: 10069181
# 2. Probabilitas pendapatan di atas Rp 12.000.000
prob_above_12m <- sum(income_data > 12000000) / n_employees
cat("Probabilitas pendapatan di atas Rp 12.000.000:", prob_above_12m, "\n")
## Probabilitas pendapatan di atas Rp 12.000.000: 0.164
# Simulasi jumlah pelanggan
set.seed(123)
n_days <- 30
lambda_customers <- 50
customers_data <- rpois(n_days, lambda_customers)
# 1. Rata-rata jumlah pelanggan simulasi
mean_customers <- mean(customers_data)
cat("Rata-rata jumlah pelanggan simulasi:", mean_customers, "\n")
## Rata-rata jumlah pelanggan simulasi: 48.96667
# 2. Probabilitas jumlah pelanggan lebih dari 60
prob_above_60 <- sum(customers_data > 60) / n_days
cat("Probabilitas jumlah pelanggan lebih dari 60:", prob_above_60, "\n")
## Probabilitas jumlah pelanggan lebih dari 60: 0.03333333
Misalkan kita memiliki percobaan pelemparan koin sebanyak 10 kali dengan probabilitas munculnya angka (sukses) adalah 0.5.
set.seed(999)
nDiskrit <- 1000 # jumlah simulasi
sizeDiskrit <- 10 # jumlah percobaan
probDiskrit <- 0.5 # probabilitas sukses
binomial_samples_diskrit <- rbinom(nDiskrit, sizeDiskrit, probDiskrit)
hist(binomial_samples_diskrit, main="Histogram Distribusi Binomial", col="red", xlab="Jumlah sukses", breaks=10)
Histogram menunjukkan distribusi jumlah keberhasilan dalam 10 percobaan.
Semakin tinggi probabilitas sukses, semakin bergeser distribusi ke
kanan.
Misalnya mensimulasikan 1000 sampel dari distribusi normal dengan rata-rata 50 dan standar deviasi 10.
set.seed(619)
nKontinu <- 1000 # jumlah sampel
meanKontinu <- 50 # rata-rata
sdKontinu <- 10 # standar deviasi
normal_samples_kontinu <- rnorm(nKontinu, meanKontinu, sdKontinu)
hist(normal_samples_kontinu, main="Histogram Distribusi Normal", col="red", xlab="Nilai", breaks=30, probability=TRUE)
# Tambahkan kurva densitas
curve(dnorm(x, meanKontinu, sdKontinu), col="black", lwd=2, add=TRUE)
Histogram menunjukkan bahwa data yang dihasilkan mengikuti distribusi
normal dengan puncak di sekitar rata-rata 50. Kurva densitas normal
(cyan) juga menunjukkan kecocokan dengan histogram.
Studi Kasus: Bu Ika adalah seorang manajer gudang di sebuah perusahaan logistik di Yogyakarta. Ia ingin memahami jumlah permintaan harian terhadap salah satu produk yang dikirim dari gudangnya. Berdasarkan data historis, diketahui bahwa permintaan harian mengikuti distribusi Poisson dengan rata-rata 8 permintaan per hari.
Bu Ika ingin melakukan simulasi selama 30 hari untuk memahami pola permintaan dan memvisualisasikannya dalam bentuk histogram.
set.seed(222)
nHari <- 30 # jumlah hari yang disimulasikan
lambdaPermintaan <- 8 # rata-rata permintaan per hari
# Simulasi permintaan harian
permintaan_harian <- rpois(nHari, lambda=lambdaPermintaan)
# Plot histogram permintaan harian
hist(permintaan_harian,
main="Histogram Permintaan Harian Produk - Gudang Bu Ika",
col="skyblue",
xlab="Jumlah Permintaan per Hari",
breaks=10,
probability=TRUE)
# kurva Poisson
lines(density(permintaan_harian), col="darkblue", lwd=2)
Histogram memperlihatkan bahwa jumlah permintaan harian cenderung
berpusat di sekitar 8 permintaan, sesuai dengan parameter distribusi
yang digunakan. Pola menyebar di sekitar nilai tengah dan menurun ke
kiri dan kanan. Garis biru pada grafik menunjukkan estimasi kepadatan
dari data simulasi. Meskipun distribusi Poisson adalah diskrit,
bentuknya tetap menunjukkan konsistensi dengan rata-rata 8.