📅  最后修改于: 2021-01-08 09:37:58             🧑  作者: Mango
一起组织以执行特定任务的一组语句称为函数。 R提供了一系列内置函数,它允许用户创建自己的函数。函数用于以模块化方式执行任务。
函数用于避免重复相同的任务并降低复杂性。为了理解和维护我们的代码,我们使用函数逻辑上将其分解为较小的部分。一个函数应该是
“的R函数通过使用关键字函数创建”。 R函数的语法如下:
func_name <- function(arg_1, arg_2, ...) {
Function body
}
函数有四个组成部分,如下所示:
功能名称
函数名称是函数的实际名称。在R中,该函数及其名称存储为一个对象。
争论
在R中,参数是一个占位符。在函数,参数是可选的,表示函数可以包含或不包含参数,并且这些参数也可以具有默认值。调用函数时,我们将值传递给参数。
功能体
函数主体包含一组定义函数的语句。
返回值
它是函数主体中要评估的最后一个表达式。
与其他语言相似,R也具有两种类型的函数,即内置函数和用户定义函数。在R中,有很多内置函数,我们可以直接在程序中调用它们而无需定义它们。 R还允许我们创建自己的函数。
在编程框架中已经创建或定义的功能称为内置功能。用户不需要创建这些类型的功能,并且这些功能内置于应用程序中。最终用户只需调用即可访问这些功能。 R具有不同类型的内置函数,例如seq(),mean(),max()和sum(x)等。
# Creating sequence of numbers from 32 to 46.
print(seq(32,46))
# Finding the mean of numbers from 22 to 80.
print(mean(22:80))
# Finding the sum of numbers from 41 to 70.
print(sum(41:70))
输出:
R允许我们在程序中创建自己的函数。用户定义用户定义函数以满足用户需求。一旦创建了这些功能,我们就可以使用这些功能,例如内置函数。
# Creating a function without an argument.
new.function <- function() {
for(i in 1:5) {
print(i^2)
}
}
new.function()
输出:
我们可以通过在函数传递适当的参数来轻松地调用函数。让我们看一个示例,看看如何调用函数。
# Creating a function to print squares of numbers in sequence.
new.function <- function(a) {
for(i in 1:a) {
b <- i^2
print(b)
}
# Calling the function new.function supplying 10 as an argument.
new.function(10)
输出:
在R中,我们可以通过以下方式调用不带参数的函数
# Creating a function to print squares of numbers in sequence.
new.function <- function() {
for(i in 1:5) {
a <- i^2
print(a)
}
}
# Calling the function new.function with no argument.
new.function()
输出:
我们可以提供的参数的函数调用相同的顺序在函数中定义或可以按照不同的顺序供应,但他们分配到的参数的名字。
# Creating a function with arguments.
new.function <- function(x,y,z) {
result <- x * y + z
print(result)
}
# Calling the function by position of arguments.
new.function(11,13,9)
# Calling the function by names of the arguments.
new.function(x = 2, y = 5, z = 3)
输出:
为了获得默认结果,我们将值分配给函数定义中的参数,然后在不提供参数的情况下调用函数。如果我们在函数调用中传递了任何参数,则它将被函数定义中参数的默认值替换。
# Creating a function with arguments.
new.function <- function(x = 11, y = 24) {
result <- x * y
print(result)
}
# Calling the function without giving any argument.
new.function()
# Calling the function with giving new values of the argument.
new.function(4,6)
输出: