当前位置: 首页 > article >正文

【R语言】函数

一、函数格式

如下所示:

  • hello:函数名;
  • function:定义的R对象是函数而不是其它变量;
  • ():函数的输入参数,可以为空,也可以包含参数;
  • {}:函数体,如果函数体只有一行,可以省略{}。
hello <- function() {
    out <- "hello, ning."
    return(out)
}
hello()

二、函数参数

函数参数可以是变量中的任何一种:向量、矩阵、数据框、列表、因子、逻辑值等。

1、缺省参数

缺省参数是在函数参数声明中对函数的某个参数指定的默认值。此处不过多赘述。

2、额外参数

R语言中称之为点点点(...)参数。额外参数允许函数具有除函数体所需输入参数之外的其它参数,并且不需要在函数参数声明中一一指定,具有很大的灵活性。

额外参数可以解决函数参数不确定或需要引用其它函数输出值作为输入参数的问题。

hello <- function(name = NULL, ...){
    out <- paste("你好," name)
    return(out)
}
hello(name = "R", extra = "Python")
hello()

三、函数返回值

 函数返回值可以是任何R语言对象。

  • 函数最后一行代码如果不是进行变量赋值的话,那么最后一行代码的运行值会自动返回。
  • 使用return命令清晰指定需要返回的值,并告知函数退出运行。

四、函数调用

R函数有两种调用方式:

  • 最常见的是通过函数名称调用;
  • 其次是通过 do.call()函数 形式,使用此方法时,需要先指定被调用函数的名称,然后以列表形式指定被调用函数的参数值。

如下示例为第二种调用方式:

do.call(what = hello, args = list(name = "R"))

五、常用R函数

1、文件操作函数

查看目录和文件函数

getwd():查看当前工作目录

list.dirs(path=getwd(),full.names=F):查看当前目录或指定目录的子目录

dir():查看当前子目录

list.dir():查看当前子目录的文件

file.info(list.files(),extra_cols=F):查看当前目录的子目录及文件的详细信息

file.mode(list.files()):查看当前目录及文件权限信息

file.mtime(list.files()):查看当前目录及文件最近一次修改信息

file.size(list.files()):查看当前目录及文件大小

system("tree"):查看目录结构。

检查目录和文件函数

file.exists():查看文件是否存在

file_test(op=“-d”, x="wn"):查看wn是否是目录

file_test(op="-f", x = "wn.txt"):查看wn.txt是否是文件

创建目录和文件函数

path.expand():将输入文件目录替换为当前系统平台支持的文件目录

file.create():创建空白文件

dir.create():创建空白目录

变更目录和文件函数

file.copy(from="test.R", to="test",overwrite=T,recursive=T):赋值文件test.R到test文件夹里。

file.name(from="test.R", to="test1.R"):将文件test.R重命名为test1.R

file.append(file1="test.R", file2="test1.R"):将test.R追加到test1.R中

删除目录和文件函数

file.remove(c("test1.R","test.R")):删除文件test1.R和test.R

unlink("test",recursive=T):删除test文件夹及其子文件夹


http://www.kler.cn/a/518518.html

相关文章:

  • python 统计相同像素值个数
  • π0:仅有3B数据模型打通Franka等7种机器人形态适配,实现0样本的完全由模型自主控制方法
  • JAVA:利用 Content Negotiation 实现多样式响应格式的技术指南
  • 从0到1:C++ 开启游戏开发奇幻之旅(一)
  • 数据库视图
  • 【Project】CupFox电影网站数据爬取分析与可视化
  • 51单片机密码锁代码
  • 【BUUCTF】October 2019 Twice SQL Injection1及知识点整理
  • MySQL 常用函数汇总(包括说明与举例)
  • 使用rsync+inotify简单实现文件实时双机双向同步
  • IDEA工具下载、配置和Tomcat配置
  • 【UE5插件】RuntimeSpeechRecognizer
  • 32、【OS】【Nuttx】OSTest分析(1):stdio测试(二)
  • 深入理解MySQL事务(万字详)
  • Zemax 非序列模式下的颜色检测器和颜色混合
  • Windows10安装MySQL找不到MSVCR120.dll和MSVCP120.dll问题解决
  • Python脚本自动删除C盘临时文件夹:scoped_dir* 开头的文件夹
  • 汽车敏捷开发:项目经理如何精准跟进项目流程
  • VMware虚拟机安装macOS11
  • C语言练习(23)
  • 开源软件协议介绍
  • 代码随想录 二叉树 test 2
  • 2025美赛数学建模B题 管理可持续旅游业保姆级教程讲解|模型讲解
  • 第19篇:python高级编程进阶:使用Flask进行Web开发
  • 基于Netty的自定义协议栈设计与编解码技术解析
  • 基于Flask的天猫美妆销售数据分析系统的设计与实现