R語(yǔ)言中ifelse、which、%in%的用法詳解
ifelse、which、%in%是R語(yǔ)言里極其重要的函數(shù),以后會(huì)經(jīng)常在別的程序中看到。
ifelse
ifelse是if條件判斷語(yǔ)句的簡(jiǎn)寫,它的用法如下:
ifelse(test,yes,no)
參數(shù) | 描述 |
---|---|
test | 一個(gè)可以判斷邏輯表達(dá)式 |
yes | 判斷為 true 后返回的對(duì)象 |
no | 判斷為 flase 后返回的對(duì)象 |
舉例:
x = 5 ifelse(x,1,0)
如果x不等于0,就返回1,等于0就返回0。
which
which 返回條件為真的句柄,給正確的邏輯對(duì)象返回一個(gè)它的索引。
which(test,arr.ind=FALSE)
test 必須是邏輯對(duì)象,邏輯數(shù)組。
舉例:
which(LETTERS == "R")
%in%
%in% 判斷 前面的對(duì)象是否在后面的容器中
element %in% list veator
1 %in% c(1:3)
補(bǔ)充:R語(yǔ)言:if-else條件判斷及any、all、na.omit使用方法
基本結(jié)構(gòu)展示:
if (7<10) { print("Seven is less than ten") } else{ print("seven is more than ten") }
實(shí)例演示:
Titanic=read.csv("https://goo.gl/4Gqsnz") #從網(wǎng)絡(luò)讀取數(shù)據(jù)
1. any()
#any代表只要有任一值符合,即為TRUE if (any(titanicC$Age>70)) { print("there are passengers older than 70") } else{ print("no one is older than 70") }
2. all()
#所有都滿足才true if (all(titanicC$Age>10)) { print("all passengers older than 10") } else{ print("there are passengers younger than 10") }
3. na.omit()
#放的位置決定是刪除單一變量缺失值,還是刪除任何變量缺失值 if (any(na.omit(titanic$Age==100))) { print("there are passengers aged 100") } else{ print("there are no passengers aged 100") } #數(shù)據(jù)庫(kù)中只要有missing的記錄都刪掉 if (any(titanic$Age==80, na.rm=TRUE)) { print("there are passengers aged 80") } else{ print("there are no passengers aged 80") } #Age這個(gè)變量有missing的記錄刪掉,其他變量有missing可以保留
4. else if 寫更重復(fù)的語(yǔ)句
x=100 y=10 if(x<y){ print("AA") } else if(x==y){ print(BB) } else{ print(CC) }
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教。
相關(guān)文章
R語(yǔ)言學(xué)習(xí)筆記缺失數(shù)據(jù)的Bootstrap與Jackknife方法
這篇文章主要為大家介紹了R語(yǔ)言學(xué)習(xí)筆記關(guān)于缺失數(shù)據(jù)的Bootstrap與Jackknife的方法,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步2021-11-11用R語(yǔ)言實(shí)現(xiàn)霍夫曼編碼的示例代碼
這篇文章主要介紹了用R語(yǔ)言實(shí)現(xiàn)霍夫曼編碼的示例代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-03-03R語(yǔ)言ggplot2設(shè)置圖例(legend)的操作大全
ggplot2是一個(gè)繪制可視化圖形的R包,汲取了R語(yǔ)言基礎(chǔ)繪圖系統(tǒng)(graphics)和l?attice包的優(yōu)點(diǎn),下面這篇文章主要給大家介紹了關(guān)于R語(yǔ)言ggplot2設(shè)置圖例(legend)的操作大全,需要的朋友可以參考下2022-07-07R語(yǔ)言數(shù)據(jù)可視化繪圖Slope chart坡度圖畫法
這篇文章主要為大家介紹了R語(yǔ)言數(shù)據(jù)可視化繪圖Slope?chart坡度圖的畫法示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-02-02R語(yǔ)言數(shù)據(jù)可視化ggplot繪制置信區(qū)間與分組繪圖技巧
這篇文章主要為大家介紹了R語(yǔ)言數(shù)據(jù)可視化ggplot繪制置信區(qū)間與分組繪圖的技巧,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步2021-11-11R語(yǔ)言 使用ggplot2繪制好看的分組散點(diǎn)圖
這篇文章主要介紹了R語(yǔ)言 使用ggplot2繪制好看的分組散點(diǎn)圖操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2021-04-04R語(yǔ)言-如何將科學(xué)計(jì)數(shù)法表示的數(shù)字轉(zhuǎn)化為文本
這篇文章主要介紹了R語(yǔ)言-如何將科學(xué)計(jì)數(shù)法表示的數(shù)字轉(zhuǎn)化為文本,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2021-04-04