該函式的乙個用途是:在設定函式引數時,限制輸入的引數範圍。
pmatch(x, table, nomatch =
na_integer_
, duplicates.ok =
false
)# 返回首次匹配元素在table中的位置
pmatch("",
"")# returns na
pmatch(
"m", c(
"mean"
,"median"
,"mode"))
# returns na
pmatch(
"med"
, c(
"mean"
,"median"
,"mode"))
# returns 2
pmatch(c("",
"ab"
,"ab"
), c(
"cbc"
,"ab"
,"abd"
), dup =
false
)# return na, 2, 3
pmatch(c("",
"ab"
,"ab"
), c(
"abc"
,"ab"
), dup =
true
)# return na, 2, 2
該函式主要包括:精確匹配和模糊匹配
如果精確匹配時,考慮第一次精確匹配,並且記錄第一次精確匹配的位置。
如果沒有精確匹配,則考慮模糊匹配,並且記錄第一次模糊匹配的位置(以開頭匹配的為首要記錄的)。
如果x的整個元素與表中元素的開頭都匹配(或者都不在開頭的模糊匹配),則返回na。
> pmatch(
"ab"
, c(
"cabc"
,"dab"
,"abd"
), dup =
false)[
1]3> pmatch(
"ab"
, c(
"abc"
,"abd"
,"abe"
), dup =
false)[
1]na> pmatch(
"ab"
, c(
"dabc"
,"cabs"
), dup =
false)[
1]na> pmatch(
"ab"
, c(
"ab"
,"ab"
,"ab"
), dup =
false)[
1]1
此外,空字串什麼也不能匹配,甚至不能與空字串完全匹配。
如果duplicates.ok為false,則一旦匹配,表的值將從後續匹配的搜尋中排除。
R語言 函式
函式是一組組合在一起以執行特定任務的語句。r語言具有大量內建函式,使用者可以建立自己的函式。在r語言中,函式是乙個物件,因此r語言直譯器能夠將控制傳遞給函式,以及函式完成動作所需的引數。該函式依次執行其任務並將控制返回到直譯器以及可以儲存在其他物件中的任何結果。函式定義 使用關鍵字函式建立r語言的函...
R語言的函式紀錄
is.na 用於檢測是否為預設值 read.csv 用於讀取csv文件,預設有開頭 source 用於讀取r語言的檔案 pi 圓周率 quantile x,u 用於獲得分位數,x為資料本身,u可選,如果忽略u,則獲取4分位數,u為分位數列表 median 中位數 mean 均值 var 方差 sd ...
R語言 函式的編寫
r語言實際上是函式的集合,使用者可以使用base,stats等包中的基本函式,也可以自己編寫函式完成一定的功能。但是初學者往往認為編寫r函式十分困難,或者難以理解。這裡對如何編寫r函式進行簡要的介紹。函式是對一些程式語句的封裝。換句話說,編寫函式,可以減少人們對重複 書寫,從而讓r指令碼程式更為簡潔...