#Atur seed agar hasil acak selalu sama saat di-run ulang (opsional)
set.seed(123)
# Membangkitkan 1000 data
sampel <- rpois(n = 1000, lambda = 2.5)
# Melihat tabel frekuensi
table(sampel)
## sampel
## 0 1 2 3 4 5 6 7 8 9
## 79 208 261 215 135 60 28 12 1 1
# Membuat grafik batang (barplot) untuk distribusi diskrit
barplot(table(sampel),
main = "Distribusi Poisson (lambda = 2.5)",
xlab = "Nilai X (Jumlah Kejadian)",
ylab = "Frekuensi",
col = "skyblue")

#interpretasi: membangkitkan data y berdistribusi poison sebanyak 10 di mana lamdanya =4
set.seed(0123)
y <- rpois(n = 10, lambda = 4)
print(y)
## [1] 3 6 3 6 7 1 4 7 4 4
x<-rpois(n=10,lambda = 4)
print(x)
## [1] 8 4 5 4 2 7 3 1 3 8
barplot(table(sampel),
main = "Distribusi Poisson (lambda = 4)",
xlab = "Nilai X (Jumlah Kejadian)",
ylab = "Frekuensi",
col = "pink")

z=rbinom(n=10,size=1,prob=0.3)
z
## [1] 1 0 0 1 0 1 0 0 0 0
print(z)
## [1] 1 0 0 1 0 1 0 0 0 0
barplot(table(z),
main = "Frekuensi Hasil Bernoulli (n = 10, p = 0.3)",
xlab = "Nilai z",
ylab = "Frekuensi",
col = c("skyblue", "coral"),
names.arg = c("Gagal (0)", "Sukses (1)"))

# 2. Buat Diagram Lingkaran
pie(table(z),
labels = paste(c("Gagal (0):", "Sukses (1):"),table(z)),
col = c("skyblue", "coral"),
main = "Proporsi Hasil Bernoulli (n = 10, p = 0.3)")

#jika peluang nya 0.7 1 nya banyak artinya pasienya banyak yang sakit, kalau 0,5 1 nya cuman 1
library(ggplot2)
library(patchwork) # Untuk menggabungkan plot berdampingan
## Warning: package 'patchwork' was built under R version 4.5.3
set.seed(123)
# 1. Bangkitkan Data & Buat Data Frame
simulasi <- rmultinom(n = 1, size = 500, prob = c(0.15, 0.25, 0.40, 0.20))
df_pendidikan <- data.frame(
Kategori = factor(c("SD", "SMP", "SMA", "Universitas"),
levels = c("SD", "SMP", "SMA", "Universitas")),
Jumlah = as.vector(simulasi)
)
# Palet Warna
warna_kategori <- c("SD" = "#e74c3c", "SMP" = "#3498db", "SMA" = "#f1c40f", "Universitas" = "#2ecc71")
# 2. Diagram Batang
p_bar <- ggplot(df_pendidikan, aes(x = Kategori, y = Jumlah, fill = Kategori)) +
geom_bar(stat = "identity", width = 0.6) +
geom_text(aes(label = Jumlah), vjust = -0.5, fontface = "bold") +
scale_x_discrete(labels = c("SD", "SMP", "SMA", "Universitas")) + # Memastikan label terpasang
scale_fill_manual(values = warna_kategori) +
labs(title = "Diagram Batang (Frekuensi)", x = "Tingkat Pendidikan", y = "Jumlah Responden") +
theme_minimal() +
theme(legend.position = "none",
axis.text.x = element_text(face = "bold", size = 10)) # Memperjelas teks sumbu X
# 3. Diagram Lingkaran
p_pie <- ggplot(df_pendidikan, aes(x = "", y = Jumlah, fill = Kategori)) +
geom_bar(stat = "identity", width = 1) +
coord_polar("y", start = 0) +
scale_fill_manual(values = warna_kategori) +
labs(title = "Diagram Lingkaran (Proporsi)") +
theme_void()
# 4. Tampilkan Berdampingan
p_bar + p_pie

library(ggplot2)
set.seed(123)
# 1. Bangkitkan Data Multinomial (8 Kategori)
p_kombinasi <- c(0.10, 0.05, 0.18, 0.07, 0.30, 0.10, 0.16, 0.04)
simulasi <- rmultinom(n = 1, size = 500, prob = p_kombinasi)
# 2. Buat Data Frame
df_gabungan <- data.frame(
Pendidikan = factor(rep(c("SD", "SMP", "SMA", "Universitas"), each = 2),
levels = c("SD", "SMP", "SMA", "Universitas")),
Status = factor(rep(c("Bekerja", "Menganggur"), times = 4)),
Jumlah = as.vector(simulasi)
)
# 3. Buat Stacked Bar Chart (Batang Ditumpuk)
ggplot(df_gabungan, aes(x = Pendidikan, y = Jumlah, fill = Status)) +
geom_bar(stat = "identity", width = 0.5) + # Otomatis menumpuk
geom_text(aes(label = Jumlah),
position = position_stack(vjust = 0.5), # Angka tepat di tengah tiap warna
color = "white", fontface = "bold") +
scale_fill_manual(values = c("Bekerja" = "#2ecc71", "Menganggur" = "#ff69b4")) + # Hijau & Pink
labs(title = "Tingkat Pendidikan dan Status Tenaga Kerja",
x = "Tingkat Pendidikan",
y = "Jumlah Responden",
fill = "Status") +
theme_minimal() +
theme(axis.text.x = element_text(face = "bold", size = 11),
legend.position = "top")

set.seed(123)
# 1. Parameter Multinomial (8 Kategori)
# Kombinasi: SD-Kerja, SD-Pengangguran, SMP-Kerja, dst.
p_kombinasi <- c(0.10, 0.05, 0.18, 0.07, 0.30, 0.10, 0.16, 0.04) # Total = 1
n_responden <- 500
# 2. Bangkitkan Data Multinomial
simulasi <- rmultinom(n = 1, size = n_responden, prob = p_kombinasi)
# 3. Ubah Hasil Menjadi Matriks (2 Baris Status x 4 Kolom Pendidikan)
data_matriks <- matrix(simulasi, nrow = 2,
dimnames = list(Status = c("Bekerja", "Menganggur"),
Pendidikan = c("SD", "SMP", "SMA", "Universitas")))
# 4. Buat Diagram Batang Berdampingan
barplot(data_matriks,
beside = TRUE, # Agar batang digabung/berdampingan, bukan ditumpuk
main = "Tingkat Pendidikan dan Status Tenaga Kerja",
xlab = "Tingkat Pendidikan",
ylab = "Jumlah Orang",
col = c("#2ecc71", "#e74c3c"), # 2 Warna: Hijau (Bekerja), Merah (Menganggur)
ylim = c(0, max(data_matriks) + 30))
# Tambahkan Legenda Warna
legend("topright",
legend = c("Bekerja", "Menganggur"),
fill = c("#2ecc71", "#e74c3c"))

library(ggplot2)
set.seed(123)
# 1. Parameter Kombinasi (4 Pendidikan x 4 Pekerjaan = 16 Probabilitas)
p_kombinasi <- c(
0.08, 0.02, 0.03, 0.02, # SD (PNS, Swasta, Wiraswasta, Lainnya)
0.05, 0.10, 0.06, 0.04, # SMP
0.06, 0.18, 0.10, 0.06, # SMA
0.08, 0.07, 0.03, 0.02 # Universitas
)
# 2. Bangkitkan Data Multinomial (500 responden)
simulasi <- rmultinom(n = 1, size = 500, prob = p_kombinasi)
# 3. Buat Data Frame Terstruktur
df_gabungan <- data.frame(
Pendidikan = factor(rep(c("SD", "SMP", "SMA", "Universitas"), each = 4),
levels = c("SD", "SMP", "SMA", "Universitas")),
Pekerjaan = factor(rep(c("PNS", "Swasta", "Wiraswasta", "Lainnya"), times = 4),
levels = c("PNS", "Swasta", "Wiraswasta", "Lainnya")),
Jumlah = as.vector(simulasi)
)
# 4. Buat Grouped Bar Chart (Batang Berjejer Samping)
ggplot(df_gabungan, aes(x = Pendidikan, y = Jumlah, fill = Pekerjaan)) +
geom_bar(stat = "identity", position = position_dodge(width = 0.8), width = 0.7) +
geom_text(aes(label = Jumlah),
position = position_dodge(width = 0.8),
vjust = -0.5, fontface = "bold", size = 3) +
scale_fill_manual(values = c("PNS" = "#2ecc71", # Hijau
"Swasta" = "#ff69b4", # Pink
"Wiraswasta" = "#3498db", # Biru
"Lainnya" = "#f1c40f")) + # Kuning
labs(title = "Tingkat Pendidikan berdasarkan Jenis Pekerjaan",
x = "Tingkat Pendidikan",
y = "Jumlah Responden",
fill = "Jenis Pekerjaan") +
theme_minimal() +
theme(axis.text.x = element_text(face = "bold", size = 11),
legend.position = "top")

library(ggplot2)
set.seed(123)
# 1. Parameter Kombinasi (4 Pendidikan x 4 Pekerjaan = 16 Probabilitas)
p_kombinasi <- c(
0.08, 0.02, 0.03, 0.02, # SD (PNS, Swasta, Wiraswasta, Lainnya)
0.05, 0.10, 0.06, 0.04, # SMP
0.06, 0.18, 0.10, 0.06, # SMA
0.08, 0.07, 0.03, 0.02 # Universitas
)
# 2. Bangkitkan Data Multinomial (500 responden)
simulasi <- rmultinom(n = 1, size = 500, prob = p_kombinasi)
# 3. Buat Data Frame
df_gabungan <- data.frame(
Pendidikan = factor(rep(c("SD", "SMP", "SMA", "Universitas"), each = 4),
levels = c("SD", "SMP", "SMA", "Universitas")),
Pekerjaan = factor(rep(c("PNS", "Swasta", "Wiraswasta", "Lainnya"), times = 4),
levels = c("PNS", "Swasta", "Wiraswasta", "Lainnya")),
Jumlah = as.vector(simulasi)
)
# 4. Grouped Bar Chart dengan Angka di Dalam Batang
ggplot(df_gabungan, aes(x = Pendidikan, y = Jumlah, fill = Pekerjaan)) +
geom_bar(stat = "identity", position = position_dodge(width = 0.8), width = 0.7) +
# vjust = 1.8 membuat angka turun ke DALAM batang
geom_text(aes(label = Jumlah),
position = position_dodge(width = 0.8),
vjust = 1.8, color = "white", fontface = "bold", size = 3.5) +
scale_fill_manual(values = c("PNS" = "#2ecc71", # Hijau
"Swasta" = "#ff69b4", # Pink
"Wiraswasta" = "#3498db", # Biru
"Lainnya" = "#f1c40f")) + # Kuning
labs(title = "Tingkat Pendidikan berdasarkan Jenis Pekerjaan",
x = "Tingkat Pendidikan",
y = "Jumlah Responden",
fill = "Jenis Pekerjaan") +
theme_minimal() +
theme(axis.text.x = element_text(face = "bold", size = 11),
legend.position = "top")
