rm(list = ls()) # install.packages(“dplyr”) # jalankan sekali jika belum ada install.packages(“dplyr”) library(dplyr) data <- read.csv2(file.choose (“dataset_rumah tangga.csv”)) data # Pastikan tipe data benar data\(pendapatan <- as.numeric(data\)pendapatan) data\(pengeluaran <- as.numeric(data\)pengeluaran) data\(anggota_keluarga <- as.integer(data\)anggota_keluarga) # Cek struktur str(data) summary(data)
#MINGGU 2 — Statistika Deskriptif + Visualisasi ringkasan <- data %>% summarise( n = n(), mean_pendapatan = mean(pendapatan), median_pendapatan = median(pendapatan), sd_pendapatan = sd(pendapatan), min_pendapatan = min(pendapatan), max_pendapatan = max(pendapatan), mean_pengeluaran = mean(pengeluaran), median_pengeluaran = median(pengeluaran), sd_pengeluaran = sd(pengeluaran), min_pengeluaran = min(pengeluaran), max_pengeluaran = max(pengeluaran) )
print(ringkasan)
#tampil di Plots (Histogram Pendapatan) hist(data$pendapatan, main=“Histogram Pendapatan Bulanan”, xlab=“Pendapatan (Rp)”)
#tampil di Plots (Histogram Pengeluaran) hist(data$pengeluaran, main=“Histogram Pengeluaran Bulanan”, xlab=“Pengeluaran (Rp)”)
#tampil di Plots (Boxplot Pendapatan) boxplot(data$pendapatan, main=“Boxplot Pendapatan”, ylab=“Pendapatan (Rp)”)
#tampil di Plots (Boxplot Pengeluaran) boxplot(data$pengeluaran, main=“Boxplot Pengeluaran”, ylab=“Pengeluaran (Rp)”)
#tampil di Plots (Melihat Hubungan antar Pendapatan dan Pengeluaran)
plot(data\(pendapatan,
data\)pengeluaran,
main=“Pendapatan vs Pengeluaran”,
xlab=“Pendapatan (Rp)”, ylab=“Pengeluaran (Rp)”)
4500000 ambang_pendapatan <- 3000000 ambang_pengeluaran <- 3300000 p_emp_pendapatan <- mean(data\(pendapatan > ambang_pendapatan) p_emp_pengeluaran <- mean(data\)pengeluaran > ambang_pengeluaran) prob_empiris <- data.frame( kejadian = c( paste0(“pendapatan >”, ambang_pendapatan), paste0(“pengeluaran >”, ambang_pengeluaran) ), peluang_empiris = c(p_emp_pendapatan, p_emp_pengeluaran) ) print(prob_empiris)
pmf_anggota <- prop.table(freq_anggota) pmf_df <- data.frame( anggota_keluarga = as.numeric(names(pmf_anggota)), probabilitas = as.numeric(pmf_anggota) )
barplot(pmf_anggota, main = “PMF Empiris Jumlah Anggota Keluarga”, xlab = “Jumlah Anggota”, ylab = “Probabilitas”)
mu <- mean(data\(pendapatan) sigma <- sd(data\)pendapatan) # Probabilitas model Normal: P(X > ambang_pendapatan) p_norm_pendapatan <- 1 - pnorm(ambang_pendapatan, mean = mu, sd = sigma) model_normal <- data.frame( distribusi = “Normal (aproksimasi)”, mu = mu, sd = sigma, ambang = ambang_pendapatan, p_model_X_gt_ambang = p_norm_pendapatan ) print(model_normal)
hist(data$pendapatan, probability = TRUE, main=“Pendapatan: Histogram + Kurva Normal (aproksimasi)”, xlab=“Pendapatan (Rp)”) curve(dnorm(x, mean = mu, sd = sigma), add = TRUE, lwd = 2)
set.seed(123) B <- 2000 # jumlah simulasi n1 <- 10 n2 <- 30 mean_n10 <- replicate(B, mean(sample(data\(pendapatan, n1, replace = TRUE))) mean_n30 <- replicate(B, mean(sample(data\)pendapatan, n2, replace = TRUE))) sampling_df <- data.frame(mean_n10 = mean_n10, mean_n30 = mean_n30) sampling_df hist(mean_n10, main=“Distribusi Sampling Mean Pendapatan (n=10)”, xlab=“Mean Sampel”) hist(mean_n30, main=“Distribusi Sampling Mean Pendapatan (n=30)”, xlab=“Mean Sampel”)dev.off(
mean_pendapatan <- mean(data\(pendapatan) ci_pendapatan <- t.test(data\)pendapatan, conf.level = 0.95)\(conf.int mean_pengeluaran <- mean(data\)pengeluaran) ci_pengeluaran <- t.test(data\(pengeluaran, conf.level = 0.95)\)conf.int estimasi <- data.frame( parameter = c(“mean_pendapatan”, “mean_pengeluaran”), estimasi_titik = c(mean_pendapatan, mean_pengeluaran), CI95_bawah = c(ci_pendapatan[1], ci_pengeluaran[1]), CI95_atas = c(ci_pendapatan[2], ci_pengeluaran[2]) ) print(estimasi)
knitr::opts_chunk$set(echo = TRUE)
## R Markdown
This is an R Markdown document. Markdown is a simple formatting syntax for authoring HTML, PDF, and MS Word documents. For more details on using R Markdown see <http://rmarkdown.rstudio.com>.
When you click the **Knit** button a document will be generated that includes both content as well as the output of any embedded R code chunks within the document. You can embed an R code chunk like this:
``` r
summary(cars)
## speed dist
## Min. : 4.0 Min. : 2.00
## 1st Qu.:12.0 1st Qu.: 26.00
## Median :15.0 Median : 36.00
## Mean :15.4 Mean : 42.98
## 3rd Qu.:19.0 3rd Qu.: 56.00
## Max. :25.0 Max. :120.00
You can also embed plots, for example:
Note that the echo = FALSE parameter was added to the
code chunk to prevent printing of the R code that generated the
plot.