# 周次:w6
# 任務:流程控制
# 姓名:黃子騏
# 日期:2021年3月3日
# 將您的身高(公分)指派給 `my_height`;體重(公斤)指派給 `my_weight`
my_height <- 177
my_weight <- 65
# 將您的身高(公分)指派給 `my_height`;體重(公斤)指派給 `my_weight`
# 分別將 `my_height` 與 `my_weight` 輸出在命令列
# 利用 `my_height` 與 `my_weight` 計算您的**身體質量指數**(Body Mass Index,BMI),BMI 計算公式為:https://health99.hpa.gov.tw/onlineQuiz/bmi
bmi <- my_weight/(my_height/100)^2
# 將您的姓名指派給 `bmi` 並且輸出在命令列
names(bmi) <- "h"
# 判斷自己的bmi是否正常
# 判斷bmi的體位狀況
if(bmi >= 18.5&bmi<24){
print("健康體位")
}else if(bmi<18.5){
print("過輕")
}else if(bmi>=24 & bmi<27){
print("過重")
}else if(bmi>=27 & bmi<30){
print("輕度肥胖")
}else if(bmi>=30 & bmi<35){
print("中度肥胖")
}else{
print("重度肥胖")
}
## [1] "健康體位"
## 題組二
# 1. 判斷全班同學體位狀況
# 請先下載google問卷結果
# 讓Rstudio cloud讀xlsx檔
#install.packages("readxl")
#library(readxl)
#data <- read_excel("psy.xlsx")
#view(data)
#
#另一種做法
#install.packages("readxl")
# install.packages("xlsx")#這個cloud也適用
# library(xlsx)
# data <- read.xlsx("psy.xlsx",1,encoding="UTF-8")
library(readxl)
data<- read_excel("psy (2).xlsx")
#View(data)
# 檢視資料檔案內容
#view(data)
str(data)
## tibble [18 × 19] (S3: tbl_df/tbl/data.frame)
## $ 時間戳記 : POSIXct[1:18], format: "2021-02-27 10:14:22" "2021-02-27 10:30:25" ...
## $ 電子郵件地址 : chr [1:18] "0803brian@gmail.com" "bbirbbira@gmail.com" "p7786071@gmail.com" "kd910518@gmail.com" ...
## $ 姓名 : chr [1:18] "1130730408莊詠翔" "1130730404 陳芎宇" "1130730406 楊世宏" "1130730416 黄子騏" ...
## $ 請問你的出生年月日 : POSIXct[1:18], format: "2002-03-08" "2001-12-04" ...
## $ 請問你的生理性別 : chr [1:18] "男" "男" "男" "男" ...
## $ 請問你的身高(公分) : num [1:18] 180 173 170 177 169 178 172 167 188 158 ...
## $ 請問你的體重(公斤) : num [1:18] 60 62 69 65 64 78 72 63 100 53 ...
## $ 請問你大約每週有幾天會使用IG (單位: 天數) : num [1:18] 6 4 1 7 7 7 6 7 7 7 ...
## $ 在你有玩IG的那一天,你一整天大概玩多久?(以小時計算,請填數字。例如30分鐘,請填0.5小時,若3小時,則填3): num [1:18] 0.5 0.25 0.3 0.5 0.2 2 1 1 0.5 0.5 ...
## $ 當在瀏覽IG時,你多常關注那些比你過得好的人? : chr [1:18] "經常" "有時" "有時" "有時" ...
## $ 當在瀏覽IG時,你多常關注那些比你過得差的人? : chr [1:18] "有時" "完全沒有" "完全沒有" "有時" ...
## $ 整體而言,你對於自己滿不滿意? : chr [1:18] "普通" "普通" "普通" "滿意" ...
## $ 整體而言,你對於你的社交生活滿不滿意? : chr [1:18] "普通" "不滿意" "滿意" "滿意" ...
## $ 整體而言,你對自己目前的健康狀況滿不滿意? : chr [1:18] "非常不滿意" "普通" "滿意" "滿意" ...
## $ 整體而言,你對於你的生活滿不滿意? : chr [1:18] "普通" "不滿意" "滿意" "滿意" ...
## $ 請問你有心事的時候,經常找哪位同學聊聊 : chr [1:18] "1130730401張藝馨" "1130730404 陳芎宇" "1130730404 陳芎宇" "1130730414 蔡承軒" ...
## $ 請問你缺錢的時候,經常找哪位同學借錢 : chr [1:18] "1130730406 楊世宏" "1130730404 陳芎宇" "1130730401張藝馨" "1130730402洪銘材" ...
## $ 請用20個字以上描述你認為軍校生應具備的特質與能力 : chr [1:18] "懂得變通,不能什麼都只聽上面的人說話,要有自己的想法,但也不能直接頂撞,要保護自己" "能夠服從上級命令,卻又不失自己的想法,不會盲目的服從" "我認為軍校生要勤奮自主,並且有靈活的思考方式。" "應該要能對自己的國家有認同感,培養國際局勢,並於在學期間規劃好未來生涯" ...
## $ 請用20個字以上描述你的理想情人的標準與特質 : chr [1:18] "長頭髮、可愛型的、稍微粘人但也不要太黏,160-170之間" "能夠了解我的,能夠體諒我的個性的,能夠聽我和陪我說話的" "能夠互相理解、尊重彼此的喜好、協助對方完成目標、視彼此為重要他人。" "我也沒什麼好描述的啦,條件又沒多好哪有資格要求東要求西,感覺對了就好反正也把不到" ...
# 檢視欄位名稱
names(data)
## [1] "時間戳記"
## [2] "電子郵件地址"
## [3] "姓名"
## [4] "請問你的出生年月日"
## [5] "請問你的生理性別"
## [6] "請問你的身高(公分)"
## [7] "請問你的體重(公斤)"
## [8] "請問你大約每週有幾天會使用IG (單位: 天數)"
## [9] "在你有玩IG的那一天,你一整天大概玩多久?(以小時計算,請填數字。例如30分鐘,請填0.5小時,若3小時,則填3)"
## [10] "當在瀏覽IG時,你多常關注那些比你過得好的人?"
## [11] "當在瀏覽IG時,你多常關注那些比你過得差的人?"
## [12] "整體而言,你對於自己滿不滿意?"
## [13] "整體而言,你對於你的社交生活滿不滿意?"
## [14] "整體而言,你對自己目前的健康狀況滿不滿意?"
## [15] "整體而言,你對於你的生活滿不滿意?"
## [16] "請問你有心事的時候,經常找哪位同學聊聊"
## [17] "請問你缺錢的時候,經常找哪位同學借錢"
## [18] "請用20個字以上描述你認為軍校生應具備的特質與能力"
## [19] "請用20個字以上描述你的理想情人的標準與特質"
# 用英文重新命名欄位名稱
names(data)[1:19] <- c("time", "email",
"name","birth",
"gender","height",
"weight","useig","usetime",
"up_com","down_com",
"sat_self","sat_social",
"sat_health","sat_life",
"mate_talk","mate_money",
"cadet","lover")
names(data)
## [1] "time" "email" "name" "birth" "gender"
## [6] "height" "weight" "useig" "usetime" "up_com"
## [11] "down_com" "sat_self" "sat_social" "sat_health" "sat_life"
## [16] "mate_talk" "mate_money" "cadet" "lover"
# 建立一個物件bmi_j,計算同學們的bmi
bmi_j <- data$weight/(data$height/100)^2
bmi_j
## [1] 18.51852 20.71569 23.87543 20.74755 22.40818 24.61810 24.33748 22.58955
## [9] 28.29335 21.23057 18.59113 23.87543 26.47211 17.84652 18.33910 23.12406
## [17] 21.67126 23.24380
#檢視所有同學的體位狀況
for(bmi in bmi_j){
if(bmi>=18.5&bmi<24){
print("健康體位")
} else if (bmi<18.5){
print("體重過輕")
} else{
print("體位異常")
}
}
## [1] "健康體位"
## [1] "健康體位"
## [1] "健康體位"
## [1] "健康體位"
## [1] "健康體位"
## [1] "體位異常"
## [1] "體位異常"
## [1] "健康體位"
## [1] "體位異常"
## [1] "健康體位"
## [1] "健康體位"
## [1] "健康體位"
## [1] "體位異常"
## [1] "體重過輕"
## [1] "體重過輕"
## [1] "健康體位"
## [1] "健康體位"
## [1] "健康體位"
###補充test
# 1. 將班上男性印出"高富帥"
# 且女性印出"白富美"
# 請運迴圈的方式,檢視班上同學帥哥美女情形
data$gender
## [1] "男" "男" "男" "男" "男" "男" "男" "男" "男" "女" "男" "男" "男" "女" "男"
## [16] "男" "女" "男"
for (i in data$gender){
if(i =="男"){
print("高富帥")
} else{
print("白富美")
}
}
## [1] "高富帥"
## [1] "高富帥"
## [1] "高富帥"
## [1] "高富帥"
## [1] "高富帥"
## [1] "高富帥"
## [1] "高富帥"
## [1] "高富帥"
## [1] "高富帥"
## [1] "白富美"
## [1] "高富帥"
## [1] "高富帥"
## [1] "高富帥"
## [1] "白富美"
## [1] "高富帥"
## [1] "高富帥"
## [1] "白富美"
## [1] "高富帥"
# 1. 若生日>"2002-01-01"印出"年輕"
# 且生日<"2002-01-01"印出"老"
# 請運迴圈的方式,檢視班上同學長幼情形
data$birth
## [1] "2002-03-08 UTC" "2001-12-04 UTC" "2001-10-15 UTC" "2002-05-18 UTC"
## [5] "2001-09-05 UTC" "2001-04-21 UTC" "2002-07-18 UTC" "2001-11-11 UTC"
## [9] "2002-03-30 UTC" "2002-04-23 UTC" "2001-10-06 UTC" "2001-10-29 UTC"
## [13] "2002-01-21 UTC" "2001-12-21 UTC" "2002-08-10 UTC" "2002-08-17 UTC"
## [17] "2002-03-26 UTC" "2002-03-30 UTC"
for (i in data$birth){
if(i >"2002-01-01"){
print("年輕")
} else{
print("老")
}
}
## [1] "老"
## [1] "老"
## [1] "老"
## [1] "老"
## [1] "年輕"
## [1] "年輕"
## [1] "老"
## [1] "老"
## [1] "老"
## [1] "老"
## [1] "老"
## [1] "老"
## [1] "老"
## [1] "老"
## [1] "老"
## [1] "老"
## [1] "老"
## [1] "老"
# 檢視所有data()