R语言基础之R语言入门
一、初识R语言及环境搭建
R语言最初是由新西兰奥克兰大学统计系的教授Ross Ihaka和Robert Gentleman在S语言基础上开发完成的。是一门解释性语言。在我看来R语言是一门数学性极强的语言,或者说这是一门为数学而生的语言,因为其具有极其出色的计算与统计分析能力,但是在程序流转方面的速度却不如Java、C++等语言。这也是R语言可以用极少的代码量完成许多复杂的数据分析工作的原因,R语言是针对统计分析、图形可视化、报告的完美工具,它在广泛的领域中都有着完美的表现。
关于R语言我习惯于使用Rstudio,因此后续的介绍部分都是以Rstudio作为R语言编辑器
现在附上R的下载地址以及Rstudio的下载地址,根据所使用的操作系统安装相应版本即可,如链接无法访问直接搜索R及R语言即可。
R的下载:
R的官网地址为:https://www.r-project.org
RStudio的下载:
RStudio的官网地址为: https://www.rstudio.com
现在我们来认识一下Rstudio环境
1.Source Editor:
Source Editor区域位于RStudio窗体的左上角,这个部分是R脚本的编辑区,在这里可以编写R语言程序代码,也可以保存并运行编写好的R程序代码。
2. Console:
Console区域位于RStudio窗体的左下角。这个区域是R语言的主界面,可以在此直接输入指令并获得执行结果。
3. Workspace:
Workspace窗口位于RStudio窗体的右上角。该部分的核心标签为Environment标签和History标签。
4.功能区:
位于RStudio窗体的右下角。该部分包含Files标签、Plots标签、Packages标签、Help标签。
二、如何使用R
现在我们编写第一个程序,使用Rstudio编写“Hello word”
1.在RStudio中创建新的项目。
2.在Console中直接输入命令“print(”Hello Word!“)”。
3.把“Hello Word!”字符串赋值给变量fistString,然后将变量打印出来,实现“Hello Word!”
> # Hello Word 程序
> fistString <- "Hello Word!"
> print(fistString)
三、R语言中的基本概念
•常量
•在程序运行过程中,其值不能被改变的量被称为常量,例如圆周率pi
•在R中没有常量类型的概念
•变量
1.值可以改变的量是变量,每一个变量都有一个名字,例如例子中的fistString
2.变量名可以包含英文字母、数字、下划线和英文句号(.)
3.变量名不能存在中文(新版本可以使用中文,但不建议)、空格、“-”、“$”等符号
4.不能以数字和下划线开头
5.变量名以”.”号开头但是这个符号后面不能是数字(会变成0.XXXX)
6.不可以和R语言自己的保留字符冲突
•函数
•函数是指一段在一起的、可以做某一件事儿的程序(语句)。例如数学中的f(x)
•R语言中函数分为内置函数和自定义函数(本节课只讨论内置函数)•R语言内置函数使用形式•函数名(参数1,参数2,…)
•函数名指的是函数的名称•参数是一个占位符。 当函数被调用时,你传递一个值(或者一个函数)到参数。 参数是可选的; 也就是说,一个函数可能不包含参数。
•起到占位符作用的参数我们称之为形参,具体传入函数的参数我们称之为实参
•函数最终会处理一个运算结果(也就是说每一个函数要完成一个任务,但不一定有返回值)
原子向量数据类型
R语言的数据类型和其他编程语言不同,R语言中的变量不存在其他语言那种基础数据类型,在R语言中变量都是以一种类似于集合(R对象)的形式存在,集合中的每一个元素被称为一个原子向量。
原子向量的数据类型有6种
数据类型 |
例子 |
Logical(逻辑型) |
TRUE, FALSE,NA |
Numeric(数字) |
12.3,5,999 |
Integer(整型) |
2L,34L,0L |
Complex(复合型) |
3 + 2i |
Character(字符) |
'a' , '"good", "TRUE", '23.4' |
Raw(原型) |
"Hello" 被存储为 48 65 6c 6c 6f |
R语言中的常用保留字
break |
for |
next |
if |
function |
repeat |
else |
Inf |
return |
TRUE |
NA |
while |
FALSE |
NaN |
注意:
'#' 在R语言中表示注释,这部分不参与编译,需要注意R语言不支持多行注释。
在R语言中 ‘=’ 和 ‘<-’ 均可以为变量赋值,需要注意的是大部分情况 ‘=’ 可以完成赋值需求,但偶尔会出现问题,建议使用R语言自己的赋值符号 ‘<-’ 编程中尽量在 ‘<-’ 符号前后各空一格。
四、基本数学运算
#加法
x1 <- 5+6
x1 #减法
x2 <- 6-1
x2 #乘法
x3 <- x1*x2
x3 #除法
x4 <- x1/x2
x4 #取余
x5 <- 9%%5
x5 #取整
x6 <- 9%/%2
x6
#N次方的符号是“**n”或者“^n”
x7 <- 3**2
x7
x8 <- 3^3
x8#平方根可以采用“**0.5”或者用sqrt()函数来计算
x3 <- 4**0.5
x3
x4 <- sqrt(4)
x4
#exp()函数是计算自然数e的x次方,e的近似值是2.718282
x0 <- exp(1)
x0 #对数使用log(x,m)函数计算,m表示底,如果求以10为底的对数可以用函数log10(x)
x1 <- log(2) # 求以e为底2的对数值
x1
x2 <- log(2,10) # 求以10为底2的对数
x2
x3 <- log10(2) # 求以10为底2的对数
x3
x4 <- log(2,2) # 求以2为底2的对数
x4
#可以使用e来表示科学计数法
x5 <- 1.28e5
x5
五、关于R包
1.R包的安装:
•R语言中的扩展包我们除了在其官网上可以找到以外,还可以在Bioconductor和GitHub等平台上找到。
•R包的第一种安装方式使用RStudio自带的图形安装界面Packages窗口中的Install按钮来下载并安装R包。
•R包的第二种安装方式是在控制台输入install.packages(“R包名")命令来安装R包。
•如果提示打不开网站需要在packages面板中更换中国CRAN镜像地址
2. R包的加载:
加载R包只需要在控制台输入library(R包名)命令或require(R包名)命令中任意一条即可。
3.R包的分离:
R包分离只需要在控制台输入remove.packages(R包名)命令即可。
R语言基础之R语言入门相关推荐
- 我的全栈之路-C语言基础之C语言概述与开发环境搭建
我的全栈之路-C语言基础之C语言概述与开发环境搭建 我的全栈之路 1.1 信息技术发展趋势 1.2 浅谈计算机系统架构 1.2.1 计算机系统架构概述 1.2.2 计算机硬件系统 1.2.2 计算机软 ...
- c语言教程变量,C语言-基础教程-C语言常量与变量
考试大计算机等级站整理: 2.2.1 标识符命名 在C语言中,标识符是对变量.函数标号和其它各种用户定义对象的命名.标识符的长度可以是一个或多个字符.绝大多数情况下,标识符的第一个字符必须是字母或下划 ...
- 计算机编程c 语言实型数据,C语言-基础教程-C语言实型数据
C语言-基础教程-C语言实型数据 分类:计算机等级 | 更新时间:2016-07-08| 来源:转载 2.4.1 实型常量 实型常量又称浮点常量,是一个十进制表示的符号实数.符号实数的值包括整数部分. ...
- c语言记忆化搜索,HNUSTC语言基础简单数据结构acm入门第一讲搜索.ppt
C语言基础,简单数据结构,ACM入门讲座搜索部分 Bjut:mark063 2010.10.30 1 Evaluation only. Created with Aspose.Slides for . ...
- 【Python语言基础】——Python NumPy 入门
Python语言基础--Python NumPy 入门 文章目录 Python语言基础--Python NumPy 入门 一.Python NumPy 入门 一.Python NumPy 入门 安装 ...
- GO 语言基础语法一 (快速入门 Go 语言)
Go语言基础语法 一. golang 标识符,关键字,命名规则 二. golang 变量 三. golang 常量 四. golang 数据类型 五. golang 布尔类型 六. golang 数字 ...
- c++语言基础知识,c++语言基础知识汇总.ppt
<c++语言基础知识汇总.ppt>由会员分享,可在线阅读,更多相关<c++语言基础知识汇总.ppt(68页珍藏版)>请在人人文库网上搜索. 1.1,第二章 C+语言初步,本章主 ...
- 学单片机需要多少C语言基础,C语言单片机编程教程
很多学员和朋友经常找我给他们推荐C语言的书,他们可能想和我当年一样,闷头大干一场,学个几个月的C语言,把C语言吃透,再开始单片机程序开发! 别!别!别! 大家千万别这么干,我当年自学了3个月的C语言, ...
- 计算机C P U的概念就是,2008计算机二级考试:C语言基础教程-C语言的特点
C语言是中级语言 C语言通常称为中级计算机语言.中级语言并没有贬义,不意味着它功能差.难以使用.或者比B A S I C.P a s c a l那样的高级语言原始,也不意味着它与汇编语言相似,会给使用 ...
- SQL语言基础:SQL语言概念知识笔记
1.SQL标准 ANSI(美国国家标准机构)SQL 对ANSI SQL进行修改后在1992年采用的标准SQL-92或SQL2 SQL-99或SQL3标准从SQL2扩充而来,增加了对象关系特征和许多其他 ...
最新文章
- Flutter开发之数据存储-3-数据库存储(34)
- 《数据结构与算法 C语言版》—— 2.5上机实验
- 浅谈用原生 JS 模仿个Promise 的实现
- 无需predetermine一条路
- YARN 任务执行报错:Caused by: java.io.IOException: Exceeded MAX_FAILED_UNIQUE_FETCHES; bailing-out
- [DB]mysql 及sql server2005下实现分页效果的sql语句
- 手电筒安卓_王思聪吃热狗数字时钟app安卓android苹果ios
- python植物大战僵尸代码写完了怎么运行_植物大战僵尸的代码如何使用python来实现...
- 计算机软考初级信息技术试题及答案,2015年软考信息技术处理员考试模拟试题及答案...
- Canon iC MF8350Cdn打印机驱动安装,解决内存不能为written问题
- 无线工业物联网数据监测终端
- 白城师范学院计算机科学学院官网,计算机科学学院2017-2018学年度第二学期奖学金公示...
- 房价――你欠中国老百姓一次彻底的崩盘!
- Facebook账号注册步骤
- 【坐标转换】四参数和七参数计算,并正向转换坐标(附完整源代码地址)
- daas 数据即服务_什么是daas
- c语言ifelse顺序,编程if语句属于顺序结构设计
- php解码 u7f3a u5c11,认识 Linux
- CentOS 6.2 LNMP搭建
- 记一次 RestfulToolkit-fix 插件下载,导致idea启动报错