#poison
set.seed(0123)
y=rpois(n=10,lambda=4)
print(y)
##  [1] 3 6 3 6 7 1 4 7 4 4
# 1. Bangkitkan data sesuai permintaan Anda
set.seed(0123)
y <- rpois(n = 10, lambda = 4)
print(y)
##  [1] 3 6 3 6 7 1 4 7 4 4
# 2. Membuat tabel frekuensi dari data y
tabel_y <- table(y)

# 3. Membuat grafik batang (barplot) dari data acak tersebut
barplot(tabel_y, 
        col = "salmon", 
        main = "Grafik Frekuensi Data Poisson (n=10, lambda=4)",
        xlab = "Nilai Y", 
        ylab = "Frekuensi (Jumlah Muncul)",
        border = "black")

# 1. Bangkitkan data sesuai permintaan Anda
set.seed(0123)
y <- rpois(n = 10, lambda = 4)
print(y)
##  [1] 3 6 3 6 7 1 4 7 4 4
# 2. Membuat tabel frekuensi dari data y
tabel_y <- table(y)

# 3. Membuat diagram lingkaran (pie chart)
pie(tabel_y, 
    col = rainbow(length(tabel_y)), 
    main = "Diagram Lingkaran Data Poisson (n=10, lambda=4)",
    labels = paste("Nilai", names(tabel_y), "(", tabel_y, "x)"))

z=rbinom(n=10, size=1, prob=0.3)
print(z)
##  [1] 1 0 0 0 0 1 0 0 0 1
# 1. Jalankan kode data Anda
set.seed(123) # Tambahkan seed opsional agar konsisten (bisa dilepas jika tidak perlu)
z <- rbinom(n = 10, size = 1, prob = 0.3)
print(z)
##  [1] 0 1 0 1 1 0 0 1 0 0
# 2. Membuat tabel frekuensi dari data z
tabel_z <- table(z)

# 3. Membuat Grafik Diagram Batang (Barplot)
barplot(tabel_z, 
        col = c("tomato", "skyblue"), 
        main = "Diagram Batang Data Bernoulli (n=10, prob=0.3)",
        xlab = "Nilai Z (0 = Gagal, 1 = Sukses)", 
        ylab = "Frekuensi (Jumlah Muncul)",
        ylim = c(0, max(tabel_z) + 2),
        names.arg = c("0 (Gagal)", "1 (Sukses)"))

# --- ATAU JIKA INGIN DIAGRAM LINGKARAN (PIE CHART) ---

# 4. Membuat Diagram Lingkaran (Pie Chart)
pie(tabel_z, 
    col = c("green", "skyblue"), 
    main = "Diagram Lingkaran Data Bernoulli (n=10, prob=0.3)",
    labels = c(paste("0 (Gagal):", tabel_z[1], "kali"), 
               paste("1 (Sukses):", tabel_z[2], "kali")))

# 1. Mengatur seed agar hasil acak konsisten
set.seed(123)

# 2. Membangkitkan data acak multinomial
# n = 1 (1 kali eksperimen)
# size = 30 (total 30 sampel/objek yang diamati)
# prob = peluang untuk 3 kategori (misal: Kategori A=0.2, B=0.5, C=0.3)
hasil_multi <- rmultinom(n = 1, size = 30, prob = c(0.2, 0.5, 0.3))

# Berikan nama pada kategori agar mudah dibaca di grafik
rownames(hasil_multi) <- c("Kategori A", "Kategori B", "Kategori C")
print(hasil_multi)
##            [,1]
## Kategori A    5
## Kategori B   14
## Kategori C   11
# Mengubah bentuk matriks hasil menjadi vektor biasa untuk grafik
data_grafik <- as.vector(hasil_multi)
names(data_grafik) <- c("Kategori A", "Kategori B", "Kategori C")

# ==========================================
# 3. MEMBUAT GRAFIK BATANG (BARPLOT)
# ==========================================
barplot(data_grafik, 
        col = c("coral", "skyblue", "lightgreen"), 
        main = "Grafik Batang Data Multinomial (Size=30)",
        xlab = "Kategori", 
        ylab = "Frekuensi (Jumlah)",
        ylim = c(0, max(data_grafik) + 5),
        border = "yellow")

# ==========================================
# 4. MEMBUAT DIAGRAM LINGKARAN (PIE CHART)
# ==========================================
pie(data_grafik, 
    col = c("red", "blue", "green"), 
    main = "Diagram Lingkaran Data Multinomial (Size=30)",
    labels = paste(names(data_grafik), "\n(", data_grafik, " item)"))

# 1. Mengatur seed agar hasil acak konsisten
set.seed(123)

# 2. Parameter Multinomial
n_sampel <- 50  # Total sampel orang yang diambil
prob_kategori <- c(0.2, 0.3, 0.35, 0.15) # Peluang SD, SMP, SMA, Kuliah
nama_kategori <- c("SD", "SMP", "SMA", "Kuliah")

# 3. Membangkitkan data acak multinomial (1 kali pengambilan sebanyak 50 sampel)
hasil_simulasi <- rmultinom(n = 1, size = n_sampel, prob = prob_kategori)

# Memberikan nama kategori pada hasil
rownames(hasil_simulasi) <- nama_kategori
print("Hasil Simulasi Jumlah Orang per Jenjang Pendidikan:")
## [1] "Hasil Simulasi Jumlah Orang per Jenjang Pendidikan:"
print(hasil_simulasi)
##        [,1]
## SD        8
## SMP      18
## SMA      17
## Kuliah    7
# Mengubah matriks menjadi vektor untuk keperluan grafik
data_grafik <- as.vector(hasil_simulasi)
names(data_grafik) <- nama_kategori

# ==========================================
# 4. MEMBUAT GRAFIK BATANG (BARPLOT)
# ==========================================
barplot(data_grafik, 
        col = c("tomato", "orange", "skyblue", "limegreen"), 
        main = "Simulasi Sebaran Pendidikan Terakhir (n = 50)",
        xlab = "Jenjang Pendidikan", 
        ylab = "Jumlah Orang (Frekuensi)",
        ylim = c(0, max(data_grafik) + 5),
        border = "black")

# ==========================================
# 5. MEMBUAT DIAGRAM LINGKARAN (PIE CHART)
# ==========================================
pie(data_grafik, 
    col = c("tomato", "orange", "skyblue", "limegreen"), 
    main = "Diagram Lingkaran Pendidikan Terakhir (n = 50)",
    labels = paste(names(data_grafik), "\n(", data_grafik, " orang)"))

# 1. Mengatur seed agar hasil konsisten
set.seed(123)

# 2. Membuat tabel kontingensi (Matriks data)
# Baris = Tingkat Pendidikan (SD, SMP, SMA, Kuliah)
# Kolom = Jenis Pekerjaan (Petani, Karyawan, Wiraswasta)
data_matrix <- matrix(
  c(10, 3, 2,   # SD: Petani, Karyawan, Wiraswasta
    8,  9, 4,   # SMP: Petani, Karyawan, Wiraswasta
    5, 15, 8,   # SMA: Petani, Karyawan, Wiraswasta
    2, 10, 18), # Kuliah: Petani, Karyawan, Wiraswasta
  nrow = 4, byrow = TRUE
)

# Memberikan nama baris dan kolom
rownames(data_matrix) <- c("SD", "SMP", "SMA", "Kuliah")
colnames(data_matrix) <- c("Petani", "Karyawan", "Wiraswasta")

print("Tabel Kontingensi Data:")
## [1] "Tabel Kontingensi Data:"
print(data_matrix)
##        Petani Karyawan Wiraswasta
## SD         10        3          2
## SMP         8        9          4
## SMA         5       15          8
## Kuliah      2       10         18
# ==========================================
# 3. MEMBUAT DIAGRAM BATANG BERGRUP
# ==========================================
barplot(data_matrix, 
        beside = TRUE, # TRUE membuat batang berjajar ke samping (tidak bertumpuk)
        col = c("tomato", "orange", "skyblue", "limegreen"), 
        main = "Gabungan Tingkat Pendidikan & Jenis Pekerjaan",
        xlab = "Jenis Pekerjaan", 
        ylab = "Jumlah Orang (Frekuensi)",
        ylim = c(0, max(data_matrix) + 5),
        legend.text = rownames(data_matrix), # Menampilkan keterangan warna (legend)
        args.legend = list(x = "topright", title = "Pendidikan")) # Posisi legend