Exercises4

匯入、檢視資料

dta <- read.table("/Users/User/Desktop/DM_R/hk0316/exercise/ex4_5/usBirths2015.txt", header = T)
dim(dta)
## [1] 12  2
str(dta)
## 'data.frame':    12 obs. of  2 variables:
##  $ birth: int  325955 298058 328923 320832 327917 330541 353415 351791 347516 339007 ...
##  $ month: Factor w/ 12 levels "April","August",..: 5 4 8 1 9 7 6 2 12 11 ...
dta
##     birth     month
## 1  325955   January
## 2  298058  February
## 3  328923     March
## 4  320832     April
## 5  327917       May
## 6  330541      June
## 7  353415      July
## 8  351791    August
## 9  347516 September
## 10 339007   October
## 11 318820  November
## 12 335722  December

依季節重新命名月份

dta$month <- c("spring", "spring", "spring", "summer", "summer", "summer", "fall", "fall", "fall", "winter", "winter", "winter")

dta
##     birth  month
## 1  325955 spring
## 2  298058 spring
## 3  328923 spring
## 4  320832 summer
## 5  327917 summer
## 6  330541 summer
## 7  353415   fall
## 8  351791   fall
## 9  347516   fall
## 10 339007 winter
## 11 318820 winter
## 12 335722 winter

各季節誕生嬰兒總數

season <- aggregate(birth ~ month, sum, data=dta)
season
##    month   birth
## 1   fall 1052722
## 2 spring  952936
## 3 summer  979290
## 4 winter  993549

Exercises5

dta2 <- read.table("/Users/User/Desktop/DM_R/hk0316/exercise/ex4_5/readingtimes.txt", header = T)
dim(dta2)
## [1]  7 14
str(dta2)
## 'data.frame':    7 obs. of  14 variables:
##  $ Snt : int  1 2 3 4 5 6 7
##  $ Sp  : int  1 2 3 4 5 6 7
##  $ Wrds: int  13 16 9 9 10 18 6
##  $ New : int  1 3 2 2 3 4 1
##  $ S01 : num  3.43 6.48 1.71 3.68 4 ...
##  $ S02 : num  2.79 5.41 2.34 3.71 2.9 ...
##  $ S03 : num  4.16 4.49 3.02 2.87 2.99 ...
##  $ S04 : num  3.07 5.06 2.46 2.73 2.67 ...
##  $ S05 : num  3.62 9.29 6.04 4.21 3.88 ...
##  $ S06 : num  3.16 5.64 2.46 6.24 3.22 ...
##  $ S07 : num  3.23 8.36 4.92 3.72 3.14 ...
##  $ S08 : num  7.16 4.31 3.37 6.33 6.14 ...
##  $ S09 : num  1.54 2.95 1.38 1.15 2.76 ...
##  $ S10 : num  4.06 6.65 2.18 3.66 3.33 ...
dta2
##   Snt Sp Wrds New   S01   S02   S03   S04   S05    S06    S07   S08   S09   S10
## 1   1  1   13   1 3.429 2.795 4.161 3.071 3.625  3.161  3.232 7.161 1.536 4.063
## 2   2  2   16   3 6.482 5.411 4.491 5.063 9.295  5.643  8.357 4.313 2.946 6.652
## 3   3  3    9   2 1.714 2.339 3.018 2.464 6.045  2.455  4.920 3.366 1.375 2.179
## 4   4  4    9   2 3.679 3.714 2.866 2.732 4.205  6.241  3.723 6.330 1.152 3.661
## 5   5  5   10   3 4.000 2.902 2.991 2.670 3.884  3.223  3.143 6.143 2.759 3.330
## 6   6  6   18   4 6.973 8.018 6.625 7.571 8.795 13.188 11.170 6.071 7.964 7.866
## 7   7  7    6   1 2.634 1.750 2.268 2.884 3.491  3.688  2.054 1.696 1.455 3.705
newdta<- dta2[,5:14]
newdta
##     S01   S02   S03   S04   S05    S06    S07   S08   S09   S10
## 1 3.429 2.795 4.161 3.071 3.625  3.161  3.232 7.161 1.536 4.063
## 2 6.482 5.411 4.491 5.063 9.295  5.643  8.357 4.313 2.946 6.652
## 3 1.714 2.339 3.018 2.464 6.045  2.455  4.920 3.366 1.375 2.179
## 4 3.679 3.714 2.866 2.732 4.205  6.241  3.723 6.330 1.152 3.661
## 5 4.000 2.902 2.991 2.670 3.884  3.223  3.143 6.143 2.759 3.330
## 6 6.973 8.018 6.625 7.571 8.795 13.188 11.170 6.071 7.964 7.866
## 7 2.634 1.750 2.268 2.884 3.491  3.688  2.054 1.696 1.455 3.705

S01~S10閱讀耗費總時間以及排序

newdta2 <- apply(dta2[,5:14], 2, sum)
newdta2
##    S01    S02    S03    S04    S05    S06    S07    S08    S09    S10 
## 28.911 26.929 26.420 26.455 39.340 37.599 36.599 35.080 19.187 31.456
order(newdta2)
##  [1]  9  3  4  2  1 10  8  7  6  5

S01~S10平均閱讀一個字所需的時間

w <- sum(dta2$Wrds)
w
## [1] 81
newdta3<-c(newdta2/w)
newdta3
##       S01       S02       S03       S04       S05       S06       S07       S08 
## 0.3569259 0.3324568 0.3261728 0.3266049 0.4856790 0.4641852 0.4518395 0.4330864 
##       S09       S10 
## 0.2368765 0.3883457