iT邦幫忙

2019 iT 邦幫忙鐵人賽

DAY 16
0
AI & Data

[Data Science系列]成為哥布林的那件事-非常粗(初)心者系列 第 16

[Data Science系列]用R語言的Operator來比較-進村費用及維修大門的判定

  • 分享至 

  • xImage
  •  

經過前面15天的努力,恩君由RankF提升到RankE啦~可喜可賀!
這意味著恩君可以去村莊的站崗協助守衛
"恩君一直都想過去,不過礙於Rank不夠"
"嘿~恩君,最近村莊變的繁榮了,但最近過路費&進村費似乎有點亂"

恩~在解決問題前,我們先來學習一些基本概念吧~

relational operator
關係運算在R語言中可以測試或定義兩個實體之間某種關係的構造或操作
利用裡面的各種符號我們可以比較相關的值
首先當我們將數值存入字元時會用一個等號,兩個等號則代表數學中的等於
來試試比較不同的值,這邊有判斷值,字元,數字

TRUE == TRUE
[1] TRUE

TRUE == FALSE
[1] FALSE

"beef" == "fish"
[1] FALSE

 4 == 5
[1] FALSE

TURE在R裡面代表1, FALSE則是0

如果要表達不等於我們可以用驚嘆號表示: !=
當然答案會和上面的完全相反

剩下的還有大於,大於等於,小於,小於等於
可以用符號 > , >= , < , <=

還記得之前在恩君在獸人賭場的時候,計算過花費的金額利用加減乘除的符號來相減
同樣的我們也可以用來比較每天的進村收支是否能足夠支付每日村莊大門的維修費用呢?

進村費收支 <- c(21, 254, 230, 115, 218)
村莊大門維修費 <- c(53, 21, 123, 281, 42)
進村費收支 > 村莊大門維修費
[1] FALSE  TRUE  TRUE FALSE  TRUE

"喔喔~這樣的確有點頭緒了"

當然也可以來看看每天收支是不是都超過120金幣

進村費收支 > 120
[1] FALSE  TRUE  TRUE FALSE  TRUE

村莊大門維修費 < 120
[1]  TRUE  TRUE FALSE FALSE  TRUE

接下來透過恩君看到的,村民進村很多時候,多個人進村都沒有收到費用
這時我們可以透過AND來判定,&這個符號代表就是"和"的意思
所以有繳費代表TRUE,沒繳費代表FALSE

> TRUE & TRUE
[1] TRUE

> FALSE & TRUE
[1] FALSE

> TRUE & FALSE
[1] FALSE

> FALSE & FALSE
[1] FALSE

所以只要其中一人沒繳費,就算是FALSE
換句話說,"和"就是只要其中一個沒滿足條件即是沒有
"條件"必須都要滿足

最後讓我們把數據帶入吧
進村費大人是5金,小孩是3金
這邊有兩對進村,判定大人小孩後

大人 <- 5
小孩 <- 3

皮爸 <- 5
皮弟 <- 3

皮爸 >= 大人 & 皮弟 >= 小孩
[1] TRUE

哈哥 <- 3
哈媽 <- 5
哈哥 >= 大人 & 哈媽 >= 小孩
[1] FALSE

果然這樣運用判定後,變得迅速多了


上一篇
[Data Science系列]利用R語言par()來設定圖表-冰淇淋銷售量圖表製作之2
下一篇
[Data Science系列]用R語言來做判定OR ,AND-管制品X聯誼會X偵訊室
系列文
[Data Science系列]成為哥布林的那件事-非常粗(初)心者30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言