# 周次:w8
# 任務:認識常用內建函數
# 姓名:廖呈祐
# 日期:2021年03月24日
## 題組一 數值向量函數
# 檢視r內建資料集
data()
# 叫出women資料集(美國女性的平均身高、體重)
data(women)
# 檢視資料集
#view(women)
head(women)
##   height weight
## 1     58    115
## 2     59    117
## 3     60    120
## 4     61    123
## 5     62    126
## 6     63    129
names(women)
## [1] "height" "weight"
nrow(women)
## [1] 15
tail(women)
##    height weight
## 10     67    142
## 11     68    146
## 12     69    150
## 13     70    154
## 14     71    159
## 15     72    164
# 建立一個物件bmi,計算美國女性的bmi
bmi <- women$weight / (women$height / 100)^2
bmi
##  [1] 341.8549 336.1103 333.3333 330.5563 327.7836 325.0189 322.2656 319.5266
##  [9] 319.1001 316.3288 315.7439 315.0599 314.2857 315.4136 316.3580
# 1. 取bmi整數,且無條件刪去法
floor(bmi)
##  [1] 341 336 333 330 327 325 322 319 319 316 315 315 314 315 316
# 2. 取bmi整數,且無條件進入法
ceiling(bmi)
##  [1] 342 337 334 331 328 326 323 320 320 317 316 316 315 316 317
# 3. 取bmi至小數點第2位,且四捨五入
round(bmi, digits=2)
##  [1] 341.85 336.11 333.33 330.56 327.78 325.02 322.27 319.53 319.10 316.33
## [11] 315.74 315.06 314.29 315.41 316.36
# 4. 請將iris資料集的花瓣長度,取整數並四捨五入
data(iris)
names(iris)
## [1] "Sepal.Length" "Sepal.Width"  "Petal.Length" "Petal.Width"  "Species"
round(iris$Petal.Length, digits=0)
##   [1] 1 1 1 2 1 2 1 2 1 2 2 2 1 1 1 2 1 1 2 2 2 2 1 2 2 2 2 2 1 2 2 2 2 1 2 1 1
##  [38] 1 1 2 1 1 1 2 2 1 2 1 2 1 5 4 5 4 5 4 5 3 5 4 4 4 4 5 4 4 4 4 4 4 5 4 5 5
##  [75] 4 4 5 5 4 4 4 4 4 5 4 4 5 4 4 4 4 5 4 3 4 4 4 4 3 4 6 5 6 6 6 7 4 6 6 6 5
## [112] 5 6 5 5 5 6 7 7 5 6 5 7 5 6 6 5 5 6 6 6 6 6 5 6 6 6 6 5 5 6 5 5 6 6 5 5 5
## [149] 5 5
## 題組二 文字向量函數
# 已建立一個物件leadline為新聞標題、lead為新聞導言
headline <- "【鮭魚改名潮】「張鮭魚之夢」改不回來 李來希喊救孩子:大人高抬貴手"
lead <- c("台灣近日掀起「鮭魚之亂」","台中一位男大生為了壽司店優惠活動",
          "把自己的名字改成「張鮭魚之夢」", "未料改完名後", "男大生發現悲劇已改了3次名",
          "讓他崩潰直呼划不來", "對此","全國公務人員協會前理事長李來希感嘆",
          "「價值觀錯亂下的羔羊」","希望主持政務的大人高抬貴手","讓他回復原狀")
headline
## [1] "【鮭魚改名潮】「張鮭魚之夢」改不回來 李來希喊救孩子:大人高抬貴手"
lead
##  [1] "台灣近日掀起「鮭魚之亂」"           "台中一位男大生為了壽司店優惠活動"  
##  [3] "把自己的名字改成「張鮭魚之夢」"     "未料改完名後"                      
##  [5] "男大生發現悲劇已改了3次名"          "讓他崩潰直呼划不來"                
##  [7] "對此"                               "全國公務人員協會前理事長李來希感嘆"
##  [9] "「價值觀錯亂下的羔羊」"             "希望主持政務的大人高抬貴手"        
## [11] "讓他回復原狀"
# 運用substr函數,擷取標題中的「張鮭魚之夢」5個字
data <- substr(headline, start=8, stop=14)
data
## [1] "「張鮭魚之夢」"
# 運用grep函數,搜尋導言中出現幾次鮭魚
salmon <- grep(lead, pattern="鮭魚")
length(salmon)
## [1] 2
# 請將導言中,出現鮭魚的句子篩選出來

# 運用sub函數,將導言中的「男大生」替換為「軍校生」

# 運用paste函數,將導言的第一句話和標題連結起來,連結的符號為「!!」

# 運用 paste0函數,將導言的第一句話和標題連結起來


## 題組三 描述統計函數
# 運用unique函數,找出iris資料集有多少種不同的花萼長度

# 運用mean函數,算出iris花萼寬度的平均

# 運用sd函數,算出iris花萼寬度的標準差

# 運用median函數,找出iris花萼寬度的中位數

# 運用max, min, range函數,找出iris花萼寬度的最大值與最小值的範圍

# 運用sum函數,將所有的花辮長度加總