编程技术文章分享与教程

网站首页 > 技术文章 正文

R语言函数入门(r语言函数的定义与调用)

hmc789 2024-11-16 20:56:53 技术文章 2 ℃

#校园V头条# 在利用R语言进行数据分析时,一定会用到各种各样的函数,首先我们要知道R里面有很多内置函数,除了可以使用内置的函数以外,还可以创建自己的函数。

自定义函数

使用function创建,基本语法为function(arg_1,arg_2,...){ Function body }。主要的组成部分为函数名称、参数、函数体以及返回值。我们来详细说一下,首先是函数名称是指函数的实际名称,便于在运用时能够识别,名称最好不要和内置函数冲突;参数是一个占位符,是可以选择的,也就意味着当你调用函数时候可以传递一个值给参数,同时注意一个函数可以包含多个参数,同样参数也可以有默认值;函数体是专门定义函数功能的;返回值是运行函数后给出的结果,当没有return语句时,会将整个函数的最后一句作为返回语句。


常用函数族入门

apply函数族是比较常用的一组核心函数,为了适应不同类型的数据、得到不同的返回值,一共包含了8个类似函数,今天我们只分享其中的比较常用的三个,apply()、lapply()、sapply()。

apply(X,MARGIN,FUN,...)。该函数可以按照行或列进行循环计算,将子元素以参数形式传递到定义的函数中,返回出计算结果。X表示处理的数据,包括数组、矩阵和数据框;MARGIN表示按行计算or列计算,通常1表示行,2表示列;FUN表示调用的函数,可以是内置函数,也可以是自定义函数 。


lapply(X,FUN,...),主要处理list ,data.frame数据集的循环,能够返回和X长度相同的list结构作为结果集。该函数的参数含义与apply()一致。但是请注意如果需要分析的数据集是一个向量或矩阵,直接使用lapply,会按照每个值进行计算,而不是按照行或列进行的分组。


sapply(X,FUN,...,simplify = TRUE, USE.NAMES = TRUE),与lapply()函数类似,增加了两个参数simplify和USE.NAMES,其余参数含义同上。当simplify = TRUE时意味着函数sapply返回值是一个list;参数USE.NAMES的值为逻辑值,如果当USE.NAMES = TRUE且X为字符串时,使用X作为结果数据名,反之可以不设置数据名。当然如果simplify = FALSE, USE.NAMES = FALSE,sapply()函数等于lapply()函数了。


标签列表
最新留言