R语言的基本数学运算

news2025/1/19 2:43:35

目录

一、对象命名原则

二、基本数学运算

2.1 四则运算

2.2 余数和整除

2.3 次方或平方根

2.4 绝对值

2.5 exp()与对数

2.6 科学符号e

2.7 圆周率与三角函数

2.8 四舍五入函数

2.9 近似函数

2.10 阶乘

三、R语言控制运算的优先级

四、无限大

五、非数字(NaN)

六、缺失值(NA)


一、对象命名原则

R语言的基本命名规则包括以下几点:

(1)下列名称是R语言的保留字,不可当作对象名称。

break、else、FALSE、for、function、if、Inf、NA、NaN、next、repeat、return、TRUE、while

(2)R语言对英文字母大小写是敏感的,所以basket与Basket,会被视为两个不同的对象。

(3)对象名称开头必须是英文字母或点号(“.”),当以点号(“.”)开头时,接续的第二个字母不可是数字

(4)对象名称只能包含字母,数字、下划线(“_”)和点号(“.”)。

二、基本数学运算

2.1 四则运算

R语言的四则运算是指加(+)、减(-)、乘(*)和除(/)。

2.2 余数和整除

余数所使用的符号是“%%”,可计算出除法运算中的余数。整除所使用的符号是“%/%”,是指除法运算中只保留整数部分。

2.3 次方或平方根

次方的符号是“**”或“^”,平方根的计算使用函数sqrt()。

2.4 绝对值

绝对值的函数名称是abs(),不论函数内的值是正数或负数,结果均为正数。

2.5 exp()与对数

exp()是指自然数e的x次方,其中e的近似值是2.718282。

对数有以下两种类型。

(1)以自然数e为底的对数,log_{e}x=ln x,语法是log()。

(2)一般基底的对数,log_{m}x,语法是log(x,m)。如果基底是10,也可以使用另一个对数函数log10()取代。

exp()和log()也可以互为反函数。

2.6 科学符号e

科学符号使用e表示,例如数字12800,实际等于“1.28*10^4”,也可以用“1.28e4”表示。

2.7 圆周率与三角函数

圆周率就是指pi。pi是系统默认的参数,其近似值是3.141593。

R语言所提供的三角函数有许多,例如sin()、cos()、tan()、asin()、acos()、atan()、sinh()、cosh()、tanh()、asinh()。

2.8 四舍五入函数

R语言的四舍五入函数是round()。

round(x,digits=k),表示将实数x,以四舍五入的方式,计算至第k位小数。另外,round()函数中的第2个参数“digits=”也可以直接省略,直接在第2个参数位置输入数字。

signif(x,digits=k),也是一个四舍五入的函数,其中x是要做处理的实数,k是有效数字的个数。例如,signif(79843.597,digits=6),代表取6个数字,从左边算第7个数字以四舍五入的方式处理。

2.9 近似函数

R语言有3个近似函数。

(1)floor(x):可得到小于等于x的最近整数。所以,floor(234.56)等于234,floor(-234.45)等于-235。

(2)ceiling(x):可得到大于等于x的最近整数。所以,ceiling(234.56)等于235,ceiling(-234.45)等于-234。

(3)trunc(x):可直接取整数。所以,trunc(234.56)等于234,trunc(-234.45)等于-234。

2.10 阶乘

factorial(x)可以返回x的阶乘。

三、R语言控制运算的优先级

当R语言碰上多种计算式同时出现在一个命令内时,除了括号“()”最优先外,其余计算优先次序如下:

(1)指数。

(2)乘法、除法、求余数(%%)、求整数(%/%),依照出现顺序运算。

(3)加法、减法,依照出现顺序运算。

四、无限大

R语言可以处理无限大(Infinity)的值,使用代号值Inf,如果是负无限大则是-Inf。其实只要某一个数字数字除以0,就可获得无限大。

判断某一个数字是否为无限大(正值无限大或负值无限大),可以使用is.infinite(x),如果x是无限大则返回逻辑值TRUE,否则返回FALSE。

另一个相关函数是is.finite(x),如果数字x是有限的(正有限大或负有限大)则返回TRUE,否则返回FALSE。

注:

在其他程序语言中,TRUE和FALSE值被称为布尔值,但在R语言中,R的开发人员将此称为逻辑值。

五、非数字(NaN)

在R语言中,Not a Number(NaN)可以解释为非数字或无定义数字。无限大除以无限大可以获得NaN。

R语言将NaN当作一个数字,可以使用NaN参与四则运算,但所得结果均是NaN。

使用is.nan(x)函数,可检测x是否位NaN,如果是则返回TRUE,否则返回FALSE。

另外,对于NaN而言,使用is.finite()和is.infinite()判断,均传回FALSE。

六、缺失值(NA)

我们可以将缺失值当作一个有效数值,甚至可以将此值应用在四则运算中,不过,通常计算结果是NA。

R语言提供的is.na(x)函数可判断x是否为NA,如果是则返回TRUE,否则返回FALSE。

对于NaN而言,使用is.na()判断,可以得到TRUE。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/470309.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

OpenCV 实战3 对图像画框、获取图像像素位置

一、函数介绍 opencv中进行鼠标操作主要用到setMouseCallback这个函数,如下: void setMouseCallback(const String& winname, MouseCallback onMouse, void* userdata 0); winname:窗口名称 onMouse:鼠标响应函数&#x…

直击德国PLS展,联诚发倾力打造沉浸式视觉盛宴!

当地时间4月25-28日,备受关注的2023德国法兰克福国际专业灯光音响展ProlightSound(以下简称“PLS展”)在德国法兰克福盛大召开。联诚发携多款创新产品及多领域的应用解决方案精彩亮相,为全球客户打造沉浸式视觉盛宴,展…

HNU-计算机系统-实验1-PrototypeSystemLab

《计算机系统》 原型机实验报告 班级:计科21XX 学号:20210801XXXX 姓名:wolf 目录 1 实验项目一 1.1项目名称 1.2实验目的 1.3实验资源 2 实验任务 2.1原型机I 2.1.1练习内容 2.1.2思考问题 2.2原型机II-扩充指令集 2.2.1…

《编程思维与实践》1040.字符串消除

《编程思维与实践》1040.字符串消除 题目 思路 每次消除都可能会受到第一次插入字符的影响,所以难以直接判断在哪个位置插入哪个字符后消除的字符数最多. 因此考虑暴力枚举: 在每个位置依此插入A,B,C 对所有情况消除的字符数进行比较,求出最大值. 对于字符串的插入可以利用str…

这个看过吗

el-upload调两个接口&#xff0c;获取二进制文件 &#xff0c;并且上传后不立即执行&#xff0c;通过 this.$refs.upload.submit();触发提交&#xff0c;直接调两个接口&#xff0c;获取到二进制文件后传输 <el-upload:auto-upload"false":data"{report…

springboot+vue在线动漫信息平台(源码+文档)

风定落花生&#xff0c;歌声逐流水&#xff0c;大家好我是风歌&#xff0c;混迹在java圈的辛苦码农。今天要和大家聊的是一款基于springboot的在线动漫信息平台。项目源码以及部署相关请联系风歌&#xff0c;文末附上联系信息 。 &#x1f495;&#x1f495;作者&#xff1a;风…

TPS和QPS的区别与联系

今天在工作中遇到了两个指标&#xff0c;将这两个指标作以解析。 1、TPS&#xff1a; Transactions Per Second&#xff0c;意思是每秒事务数。一个事务是指客户端向服务器发送请求然后服务器做出反应的过程&#xff0c;具体的事务定义&#xff0c;可以是一个接口、多个接口、…

IDEA中application.yaml文件无法自动提示

问题描述&#xff1a; 在IDEA中application.properties可以自动提示&#xff0c;但是application.yml/application.yaml文件却不可以实现关键词提示和代码跳转 甚至&#xff0c;在Modules模块中都无法识别到application.yml文件&#xff01;&#xff01; 总感觉这个yml文件图标…

【C++学习】类和对象--继承

基本语法 继承是面向对象三大特性之一&#xff0c;有些类和类之间存在特殊关系。 下级别成员除了拥有上一级的共性还有自己的特点。 这个时候我们就可以考虑利用继承的技术&#xff0c;减少重复代码。 基本语法&#xff1a;class 子类 &#xff1a;继承方式 父类 子类也称为…

【HTML 标签详解】

&#x1f389;&#x1f389;&#x1f389;点进来你就是我的人了 博主主页&#xff1a;&#x1f648;&#x1f648;&#x1f648;戳一戳,欢迎大佬指点!人生格言&#xff1a;当你的才华撑不起你的野心的时候,你就应该静下心来学习! 欢迎志同道合的朋友一起加油喔&#x1f9be;&am…

MySQL(三)-数据类型

MYSQL数据类型 1 整数类型2 浮点数类型和定点数类型3 日期与时间类型4 文本字符串类型5 二进制字符串类型6 数据类型的选择 表是由多列字段组成&#xff0c;每一个字段会有不同的数据类型&#xff0c;不同的数据类型决定了字段包含的数据内容。不同的数据类型也决定了mysql在使…

SpringBoot项目结构及依赖技术栈

目录 1、pom.xml文件配置说明 2、SpringBoot项目结构说明 3、入门案例关键配置说明 &#x1f308; 前面我们学习了SpringBoot快速入门案例&#xff0c;本节我们通过POM文件和项目结构分析两部分内容了解下关于SpringBoot的一些配置说明&#xff0c;以便全面了解SpringBoot项…

Javaweb | 转发、重定向

&#x1f497;wei_shuo的个人主页 &#x1f4ab;wei_shuo的学习社区 &#x1f310;Hello World &#xff01; 转发 转发与页面跳转 转发 转发的作用在服务器端&#xff0c;将请求发送给服务器上的其他资源&#xff0c;以共同完成一次请求的处理 页面跳转 使用forward跳转时&am…

MySQL(七)-日期和时间函数的使用解析

日期和时间函数的使用解析 1 获取当前日期的函数和获取当前时间的函数2 获取当前日期和时间的函数3 UNIX时间戳函数4 返回UTC日期的函数和返 UTC 时间的函数5 获取月份的函数MONTH(date)和 MONTHNAME(date)6 获取星期的函数DAYNAME(d)DAYOFWEEK(d)和WEEKDAY(d)7 获取星期数的函…

芯片封装基本流程及失效分析处理方法

芯片封装 芯片封装的目的在于对芯片进行保护与支撑作用、形成良好的散热与隔绝层、保证芯片的可靠性&#xff0c;使其在应用过程中高效稳定地发挥功效。 工艺流程 硅片减薄 使用物理手段&#xff0c;如磨削、研磨等&#xff1b;或者化学手段&#xff0c;如电化学腐蚀、湿法腐蚀…

2023-04-24:用go语言重写ffmpeg的muxing.c示例。

2023-04-24&#xff1a;用go语言重写ffmpeg的muxing.c示例。 答案2022-04-24&#xff1a; 本程序的大体过程如下&#xff1a; 打开输出文件并写入头部信息。 添加音频和视频流&#xff0c;并为每个流创建 AVCodecContext 对象&#xff0c;根据输入格式设置编码器参数&#x…

springboot 整合itext 实现pdf下载

一 itext介绍 1.1 核心组件介绍 Text中用文本块(Chunk)、短语(Phrase)和段落(paragraph)处理文本。 1.文本块(Chunk)是处理文本的最小单位&#xff0c;有一串带格式&#xff08;包括字体、颜色、大小&#xff09;的字符串组成。如以下代码就是产生一个字体为HELVETICA、大小为…

【OAI】UERANSIM容器与OAI核心网分立部署及测试

说明启动核心网&#xff1a;启动基站&#xff1a;功能测试ueransim测试1&#xff1a;通过12.1.1.x ping192.168.70.1ueransim测试2&#xff1a; 通过nr-binder绑定自定义TCP程序传数据到核心网ueransim测试3&#xff1a;多ueransim启动 结论附录基站配置文件&#xff1a;TCP通信…

HCIA-RS实验-路由配置-静态路由缺省路由

在计算机网络中&#xff0c;路由器是实现数据包转发的重要设备。它通过查找路由表中的路由信息&#xff0c;将数据包从源地址转发到目标地址。而静态路由和缺省路由则是路由表中的两种重要信息&#xff0c;下面我们来详细了解一下它们的概念、特点和应用。 目录 简述 一、静态…

Let‘s Learn .NET|通过 Semantic Kernel .NET SDK 管理你的 OpenAI 项目

编辑&#xff1a;Alan Wang 排版&#xff1a;Rani Sun Lets Learn .NET 系列 “Lets Learn .NET” 是面向全球的 .NET 初学者学习系列&#xff0c;旨在通过不同语言&#xff0c;帮助不同地区的开发者掌握最新的 .NET 开发知识与技能。 在 ChatGPT 与 OpenAI 火热的当下&#x…