您好,登錄后才能下訂單哦!
本篇內容介紹了“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 from 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
“R語言的函數怎么自定義”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。