選單
×
   ❮     
HTML CSS JAVASCRIPT SQL PYTHON JAVA PHP HOW TO W3.CSS C C++ C# BOOTSTRAP REACT MYSQL JQUERY EXCEL XML DJANGO NUMPY PANDAS NODEJS R TYPESCRIPT ANGULAR GIT POSTGRESQL MONGODB ASP AI GO KOTLIN SASS VUE DSA GEN AI SCIPY AWS CYBERSECURITY DATA SCIENCE
     ❯   

R 函式


函式是一段只在被呼叫時執行的程式碼塊。

你可以將資料(稱為引數)傳遞給函式。

函式可以返回資料作為結果。


建立函式

要建立函式,請使用 function() 關鍵字

示例

my_function <- function() { # 建立一個名為 my_function 的函式
  print("Hello World!")
}

呼叫函式

要呼叫函式,請使用函式名後跟括號,例如 my_function()

示例

my_function <- function() {
  print("Hello World!")
}

my_function() # 呼叫名為 my_function 的函式
自己動手試一試 »

引數

資訊可以作為引數傳遞給函式。

引數在函式名之後、括號內指定。您可以新增任意數量的引數,只需用逗號分隔即可。

下面的例子有一個帶有一個引數 (fname) 的函式。呼叫函式時,我們傳遞一個名字,該名字在函式內部用於列印全名

示例

my_function <- function(fname) {
  paste(fname, "Griffin")
}

my_function("Peter")
my_function("Lois")
my_function("Stewie")
自己動手試一試 »

引數或實參?

術語“引數”(parameter)和“實參”(argument)可以用於相同的事情:傳遞給函式的資訊。

從函式的角度來看

引數是函式定義中括號內的變數。

實參是在呼叫函式時傳送到函式的值。



引數數量

預設情況下,必須使用正確數量的實參來呼叫函式。這意味著如果您的函式需要 2 個實參,您必須使用 2 個實參來呼叫該函式,不多也不少

示例

此函式需要 2 個引數,並接收 2 個引數

my_function <- function(fname, lname) {
  paste(fname, lname)
}

my_function("Peter", "Griffin")
自己動手試一試 »

如果你嘗試用 1 個或 3 個引數呼叫函式,你會收到一個錯誤

示例

此函式需要 2 個實參,但只接收了 1 個實參

my_function <- function(fname, lname) {
  paste(fname, lname)
}

my_function("Peter")
自己動手試一試 »

預設引數值

下面的例子展示瞭如何使用預設引數值。

如果我們不帶實參呼叫函式,它將使用預設值

示例

my_function <- function(country = "Norway") {
  paste("I am from", country)
}

my_function("Sweden")
my_function("India")
my_function() # 將獲得預設值,即 Norway
my_function("USA")
自己動手試一試 »

返回值

要讓函式返回一個結果,請使用 return() 函式

示例

my_function <- function(x) {
  return (5 * x)
}

print(my_function(3))
print(my_function(5))
print(my_function(9))
自己動手試一試 »

上面程式碼的輸出將是

[1] 15
[1] 25
[1] 45


×

聯絡銷售

如果您想將 W3Schools 服務用於教育機構、團隊或企業,請傳送電子郵件給我們
sales@w3schools.com

報告錯誤

如果您想報告錯誤,或想提出建議,請傳送電子郵件給我們
help@w3schools.com

W3Schools 經過最佳化,旨在方便學習和培訓。示例可能經過簡化,以提高閱讀和學習體驗。教程、參考資料和示例會不斷審查,以避免錯誤,但我們無法保證所有內容的完全正確性。使用 W3Schools 即表示您已閱讀並接受我們的使用條款Cookie 和隱私政策

版權所有 1999-2024 Refsnes Data。保留所有權利。W3Schools 由 W3.CSS 提供支援