您好,登錄后才能下訂單哦!
這篇文章給大家分享的是有關R語言函數詳解及實例用法的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。
函數是一組組合在一起以執行特定任務的語句。 R 語言具有大量內置函數,用戶可以創建自己的函數。
在R語言中,函數是一個對象,因此R語言解釋器能夠將控制傳遞給函數,以及函數完成動作所需的參數。
該函數依次執行其任務并將控制返回到解釋器以及可以存儲在其他對象中的任何結果。
使用關鍵字函數創建 R 語言的函數。 R 語言的函數定義的基本語法如下
function_name <- function(arg_1, arg_2, ...) { Function body }
函數的不同部分 -
函數名稱 -這是函數的實際名稱。 它作為具有此名稱的對象存儲在 R 環境中。
參數 -參數是一個占位符。 當函數被調用時,你傳遞一個值到參數。 參數是可選的; 也就是說,一個函數可能不包含參數。 參數也可以有默認值。
函數體 -函數體包含定義函數的功能的語句集合。
返回值 -函數的返回值是要評估的函數體中的最后一個表達式。
R語言有許多內置函數,可以在程序中直接調用而無需先定義它們。我們還可以創建和使用我們自己的函數,稱為用戶定義的函數。
內置函數的簡單示例是 seq(),mean(),max(),sum(x) 和 paste(...) 等。它們由用戶編寫的程序直接調用。 您可以參考最廣泛使用的 R 函數。
# Create a sequence of numbers from 32 to 44. print(seq(32,44)) # Find mean of numbers from 25 to 82. print(mean(25:82)) # Find sum of numbers frm 41 to 68. print(sum(41:68))
當我們執行上面的代碼,它產生以下結果 -
[1] 32 33 34 35 36 37 38 39 40 41 42 43 44 [1] 53.5 [1] 1526
我們可以在 R 語言中創建用戶定義的函數。它們特定于用戶想要的,一旦創建,它們就可以像內置函數一樣使用。 下面是一個創建和使用函數的例子。
# Create a function to print squares of numbers in sequence. new.function <- function(a) { for(i in 1:a) { b <- i^2 print(b) } }
# Create a function to print squares of numbers in sequence. new.function <- function(a) { for(i in 1:a) { b <- i^2 print(b) } } # 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() { for(i in 1:5) { print(i^2) } } # 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) { result <- a * b + c print(result) } # 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) { result <- a * b print(result) } # 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) { print(a^2) print(a) print(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 no default
感謝各位的閱讀!關于“R語言函數詳解及實例用法”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。