#期中考題目
library(readr)
## Warning: 套件 'readr' 是用 R 版本 4.2.3 來建造的
#讀取資料,命名為"money"-----
#一、下載money_management.csv,讀入Rstudio,命名為money
load("money_management.RData")
#二、快速檢視money的摘要資訊----
summary(money)
##        id      gender      grade     pocket_money    savings      household
##  college: 66   女:116   一年級: 53   否:187       Min.   :    0   否:209   
##  NDU    :201   男:151   二年級:192   是: 80       1st Qu.: 2000   是: 58   
##                         三年級: 16                Median : 5000            
##                         四年級:  6                Mean   : 5511            
##                                                   3rd Qu.: 8000            
##                                                   Max.   :30000            
##  keep_account
##  否:158      
##  是:109      
##              
##              
##              
## 
#三、不同年級(grade)人數的百分比為何?請依人數排列-----
table(money$grade)
## 
## 一年級 二年級 三年級 四年級 
##     53    192     16      6
prop.table(table(money$grade))
## 
##     一年級     二年級     三年級     四年級 
## 0.19850187 0.71910112 0.05992509 0.02247191
#四、不同年級(grade)的家用(household)差異為何?請以「長條圖」表示-----
ts <- table(money$household,money$grade)
par(mfrow =  c(1,2) )
p.ts <- prop.table(ts)
p.ts
##     
##           一年級      二年級      三年級      四年級
##   否 0.161048689 0.554307116 0.056179775 0.011235955
##   是 0.037453184 0.164794007 0.003745318 0.011235955
p.ts <- p.ts*100
p.ts
##     
##          一年級     二年級     三年級     四年級
##   否 16.1048689 55.4307116  5.6179775  1.1235955
##   是  3.7453184 16.4794007  0.3745318  1.1235955
p.ts <- round(p.ts,2)
p.ts
##     
##      一年級 二年級 三年級 四年級
##   否  16.10  55.43   5.62   1.12
##   是   3.75  16.48   0.37   1.12
barplot(p.ts)
barplot(p.ts, beside =TRUE    )

rownames(p.ts)
## [1] "否" "是"
label <- rownames(p.ts)
label
## [1] "否" "是"
barplot(p.ts, 
        beside = TRUE, 
        legend.text =  label , 
        main = "大學生家用習慣差異", 
        sub = "by Ellis", 
        xlab = "年級", #x軸標籤
        ylab = "人數", #y軸標籤
        col = c("gray","pink")   )

#五、不同身份(id)的記帳(keep_account)習慣差異為何?請以「圖餅圖」表示-----
op <- table(money$id,money$keep_account)
op
##          
##            否  是
##   college  32  34
##   NDU     126  75
o <- prop.table(op)
o
##          
##                  否        是
##   college 0.1198502 0.1273408
##   NDU     0.4719101 0.2808989
o <- o*100
o
##          
##                 否       是
##   college 11.98502 12.73408
##   NDU     47.19101 28.08989
o <- round(o,2)
o
##          
##              否    是
##   college 11.99 12.73
##   NDU     47.19 28.09
bookkeeping<- o[1,] 
ndu <- o[2,] 
bookkeeping
##    否    是 
## 11.99 12.73
ndu 
##    否    是 
## 47.19 28.09
par(mfrow =  c(1,2) )

pie(bookkeeping, main = "大學生記帳" ,
    sub = "by Ellis ", 
    col = c("gray","pink")   )
pie(ndu , main =  "ndu記帳" ,
    sub = "by Ellis", 
    col = c("gray","pink")   )