data <- read_excel("DATASET1.xlsx")
str(data)
## tibble [240 × 5] (S3: tbl_df/tbl/data.frame)
##  $ ID_Pelanggan                 : chr [1:240] "1" "2" "3" "4" ...
##  $ Gender                       : chr [1:240] "Pria" "Pria" "Wanita" "Wanita" ...
##  $ Usia                         : chr [1:240] "19" "21" "20" "23" ...
##  $ Pendapatan_Tahunan_Ribuan_USD: chr [1:240] "15" "15" "16" "16" ...
##  $ Pengeluaran_USD              : chr [1:240] "39" "81" "6" "77" ...
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
data$Usia <- as.numeric(data$Usia)
## Warning: NAs introduced by coercion
data$Pendapatan_Tahunan_Ribuan_USD <- as.numeric(data$Pendapatan_Tahunan_Ribuan_USD)
## Warning: NAs introduced by coercion
data$Pengeluaran_USD <- as.numeric(data$Pengeluaran_USD)
## Warning: NAs introduced by coercion
ggplot(data,
       aes(x = Pendapatan_Tahunan_Ribuan_USD,
           y = Pengeluaran_USD)) +
  geom_point(color = "#1f77b4", size = 3, alpha = 0.8) +
  labs(
    title = "Hubungan Pendapatan Tahunan dan Pengeluaran",
    x = "Pendapatan Tahunan (Ribuan USD)",
    y = "Pengeluaran (USD)"
  )
## Warning: Removed 1 row containing missing values or values outside the scale range
## (`geom_point()`).

ggplot(data, aes(x = Usia)) +
  geom_histogram(bins = 10, fill = "#ff7f0e", color = "white") +
  labs(
    title = "Distribusi Usia Pelanggan",
    x = "Usia",
    y = "Frekuensi"
  )
## Warning: Removed 1 row containing non-finite outside the scale range
## (`stat_bin()`).

ggplot(data, aes(x = Gender, y = Pengeluaran_USD, fill = Gender)) +
  geom_boxplot(alpha = 0.7) +
  scale_fill_manual(values = c("#2ca02c", "#d62728")) +
  labs(
    title = "Perbandingan Pengeluaran berdasarkan Gender",
    x = "Gender",
    y = "Pengeluaran (USD)"
  )
## Warning: Removed 1 row containing non-finite outside the scale range
## (`stat_boxplot()`).

ggplot(data, aes(
  x = Pendapatan_Tahunan_Ribuan_USD,
  y = Pengeluaran_USD,
  color = Gender
)) +
  geom_point(size = 3, alpha = 0.8) +
  labs(
    title = "Pendapatan vs Pengeluaran Berdasarkan Gender",
    x = "Pendapatan Tahunan (Ribuan USD)",
    y = "Pengeluaran (USD)"
  )
## Warning: Removed 1 row containing missing values or values outside the scale range
## (`geom_point()`).