# 1. 輸入資料
Statistic <- c(68, 85, 74, 88, 63, 78, 90, 80, 58, 63)
Math <- c(85, 91, 74, 100, 82, 84, 78, 100, 51, 70)

# 2. 建立資料框
data <- data.frame(Statistic, Math)

# 3. 畫散佈圖
plot(data$Statistic, data$Math,
     main = "10位學生統計與數學成績散佈圖",
     xlab = "統計成績",
     ylab = "數學成績",
     pch = 19,             # 點的樣式(實心圓)
     col = "skyblue",      # 顏色
     cex = 1.5)            # 點的大小

set.seed(123)   # 為了讓每次都能重現相同資料
math_scores <- round(rnorm(20, mean = 75, sd = 10))  # 隨機 20 筆成績

hist(math_scores,
     main = "數學成績直方圖",
     xlab = "成績",
     ylab = "人數",
     col = "lightblue",
     border = "gray40")

# 資料建立
club_type <- c("娛樂休閒", "知識閱讀", "體育競技", "科學創新", "公益活動")
frequency <- c(185, 82, 35, 28, 25)

# 繪製長條圖
barplot(frequency,
        names.arg = club_type,
        main = "大學生最喜歡參加的社團長條圖",
        xlab = "社團類型",
        ylab = "次數",
        col = "pink",
        border = "gray40",
        las = 2)  # 讓文字垂直以免重疊

# 資料建立
club_type <- c("娛樂休閒", "知識閱讀", "體育競技", "科學創新", "公益活動")
frequency <- c(185, 82, 35, 28, 25)

# 設定顏色
colors <- c("skyblue", "lightgreen", "salmon", "orange", "violet")

# 繪製圓餅圖
pie(frequency,
    labels = club_type,
    main = "大學生最喜歡參加的社團圓餅圖",
    col = colors)

# 資料建立
club_type <- c("娛樂休閒", "知識閱讀", "體育競技", "科學創新", "公益活動")
frequency <- c(185, 82, 35, 28, 25)

# 定義顏色
colors <- "steelblue"

# 繪製棒棒糖圖
plot(frequency,
     type = "p",
     pch = 16,
     col = colors,
     xaxt = "n",
     xlab = "社團類型",
     ylab = "次數",
     main = "大學生最喜歡參加的社團棒棒糖圖",
     cex = 1.5)

# 加上棒棒糖棍棒(垂直線)
segments(1:length(frequency), 0, 1:length(frequency), frequency, col = colors, lwd = 2)

# 加上 x 軸標籤
axis(1, at = 1:length(club_type), labels = club_type, las = 2)

# 1. 讀取 CSV 資料
data <- read.csv(text = "Name,Statistic,Math,Japanese,Management,Accounting
張青松,68,85,84,89,86
王奕翔,85,91,63,76,66
田新雨,74,74,61,80,69
徐麗娜,88,100,49,71,66
張志傑,63,82,89,78,80
趙穎睿,78,84,51,60,60
王智強,90,78,59,72,66
宋媛婷,80,100,53,73,70
袁四方,58,51,79,91,85
張建國,63,70,91,85,82")

# 2. 取 Japanese 變項
japanese_scores <- data$Japanese

# 3. 計算統計量
mean_jp <- mean(japanese_scores)       # 平均數
median_jp <- median(japanese_scores)   # 中位數
sd_jp <- sd(japanese_scores)           # 標準差
var_jp <- var(japanese_scores)         # 變異數
q1_jp <- quantile(japanese_scores, 0.25)  # Q1
q3_jp <- quantile(japanese_scores, 0.75)  # Q3

# 4. 計算眾數
mode_jp <- as.numeric(names(sort(table(japanese_scores), decreasing = TRUE)[1]))

# 5. 顯示結果
cat("Japanese 統計量:\n")
## Japanese 統計量:
cat("平均數:", mean_jp, "\n")
## 平均數: 67.9
cat("中位數:", median_jp, "\n")
## 中位數: 62
cat("標準差:", sd_jp, "\n")
## 標準差: 16.25115
cat("變異數:", var_jp, "\n")
## 變異數: 264.1
cat("Q1 (25%):", q1_jp, "\n")
## Q1 (25%): 54.5
cat("Q3 (75%):", q3_jp, "\n")
## Q3 (75%): 82.75
cat("眾數:", mode_jp, "\n")
## 眾數: 49