函式是一組組合在一起以執行特定任務的語句。 r語言具有大量內建函式,使用者可以建立自己的函式。
在r語言中,函式是乙個物件,因此r語言直譯器能夠將控制傳遞給函式,以及函式完成動作所需的引數。
該函式依次執行其任務並將控制返回到直譯器以及可以儲存在其他物件中的任何結果。
函式定義
使用關鍵字函式建立r語言的函式。 r語言的函式定義的基本語法如下
function_name <- function
(arg_1, arg_2, ...)
函式元件
函式的不同部分 -
r語言有許多內建函式,可以在程式中直接呼叫而無需先定義它們。我們還可以建立和使用我們自己的函式,稱為使用者定義的函式。
內建功能
內建函式的簡單示例是seq(),mean(),max(),sum(x)和paste(…)等。它們由使用者編寫的程式直接呼叫。 您可以參考最廣泛使用的r函式。
# create a sequence of numbers from
32to
44.print(seq(32,44))
# find mean of numbers from
25to
82.print(mean(25:82))
# find sum
of numbers frm 41
to68.
print(sum(41:68))
當我們執行上面的**,它產生以下結果 -
[1] 32
3334
3536
3738
3940
4142
4344
[1] 53.5
[1] 1526
使用者定義的函式
我們可以在r語言中建立使用者定義的函式。它們特定於使用者想要的,一旦建立,它們就可以像內建函式一樣使用。 下面是乙個建立和使用函式的例子。
# create a function
to print squares of numbers in sequence.
new.function
<- function(a)
}
呼叫函式
# create a function
to print squares of numbers in sequence.
new.function
<- function(a)
}# call the function
new.function supplying 6
as an argument.
new.function(6)
當我們執行上面的**,它產生以下結果 -
[1] 1
[1] 4
[1] 9
[1] 16
[1] 25
[1] 36
呼叫沒有引數的函式# create a function without an argument.
new.function
<- function()
}
# call the function without supplying an argument.
new.function()
當我們執行上面的**,它產生以下結果 -
[1] 1
[1] 4
[1] 9
[1] 16
[1] 25
使用引數值呼叫函式(按位置和名稱)
函式呼叫的引數可以按照函式中定義的順序提供,也可以以不同的順序提供,但分配給引數的名稱。
# create a function
with arguments.
new.function
<- function(a,b,c)
# call the function by position of arguments.
new.function(5,3,11)
# call the function by names of the arguments.
new.function(a = 11, b = 5, c = 3)
當我們執行上面的**,它產生以下結果 -
[1] 26
[1] 58
使用預設引數呼叫函式
我們可以在函式定義中定義引數的值,並呼叫函式而不提供任何引數以獲取預設結果。 但是我們也可以通過提供引數的新值來獲得非預設結果來呼叫這樣的函式。
# create a function
with arguments.
new.function
<- function(a = 3, b = 6)
# call the function without giving any argument.
new.function()
# call the function
with giving new values of the argument.
new.function(9,5)
當我們執行上面的**,它產生以下結果 -
[1] 18
[1] 45
功能的延遲計算
對函式的引數進行延遲評估,這意味著它們只有在函式體需要時才進行評估。
# create a function with arguments.
new.function <- function
(a, b)
# evaluate the function without supplying one of the arguments.
new.function(6)
當我們執行上面的**,它產生以下結果 -
[1] 36
[1] 6
error in
print(b) : argument "b"
is missing, with
nodefault
r語言qsignrank函式用法 R語言常用函式名
一 資料管理 vector 向量 numeric 數值型向量 logical 邏輯型向量 character 字元型向量 list 列表 data.frame 資料框 c 連線為向量或列表 length 求長度 subset 求子集 seq,from to,sequence 等差序列 rep 重複 ...
R語言常用函式
sum max min which.max 返回x中最大元素的下標 in x x in c 2,3 0 包含於函式,1,2,3,4把x中的2,3替換成0 range 找出最大最小值 var 求方差 rev 對x中的元素取逆序1234 4321 sort 公升序排列 merge x,y,by samp...
R語言函式par
win10 64 bit r x64 3.4.0 r studio v0.99.903 online shopping.txt period amount 2008 1281.8 2009 2630.0 2010 4610.0 2011 7846.5 2012 13040.0 2013 18500....