R语言简介、环境与基础语法及注释

R语言简介、环境与基础语法及注释

  • 一、R语言
    • 1.R语言简介
    • 2.R语言官网
    • 3.R语言中国的镜像网站
    • 4.R语言下载
    • 5.R语言的历史
  • 二、R语言环境
    • 1.Windows安装
      • 1.1 去 R 语言下载的镜像站点的列表下载
      • 1.2 选择版本进行下载
      • 1.3 点击运行
      • 1.4 一路默认,安装完毕!
    • 2.Linux安装
      • 2.1 安装R
      • 2.2 启动R
      • 2.3 安装plotrix软件包
  • 三、R语言基础语法及注释
    • 1.R语言基本语法
      • 1.1 命令提示符
      • 1.2 脚本文件
    • 2.注释

R语言简介、环境与基础语法及注释

一、R语言

R是用于统计分析、绘图的语言和操作环境。R是属于GNU系统的一个自由、免费、源代码开放的软件,它是一个用于统计计算和统计制图的优秀工具。


1.R语言简介

R语言是用于统计分析,图形表示和报告的编程语言和软件环境。 R语言由Ross Ihaka和Robert Gentleman在新西兰奥克兰大学创建,目前由R语言开发核心团队开发。 R语言在GNU通用公共许可证下免费提供,并为各种操作系统(如Linux,Windows和Mac)提供预编译的二进制版本。 这种编程语言被命名为R语言,基于两个R语言作者的名字的第一个字母(Robert Gentleman和Ross Ihaka),并且部分是贝尔实验室语言S的名称。


2.R语言官网

R语言官网

R语言简介、环境与基础语法及注释


3.R语言中国的镜像网站

R语言简介、环境与基础语法及注释
China
https://mirrors.tuna.tsinghua.edu.cn/CRAN/ TUNA Team, Tsinghua University
https://mirrors.bfsu.edu.cn/CRAN/ Beijing Foreign Studies University
https://mirrors.pku.edu.cn/CRAN/ Peking University
https://mirrors.ustc.edu.cn/CRAN/ University of Science and Technology of China
https://mirrors.zju.edu.cn/CRAN/ Zhejiang University
https://mirror-hk.koddos.net/CRAN/ KoDDoS in Hong Kong
https://mirrors.e-ducation.cn/CRAN/ Elite Education
https://mirrors.qlu.edu.cn/CRAN/ Qilu University of Technology
https://mirror.lzu.edu.cn/CRAN/ Lanzhou University Open Source Society
https://mirrors.nju.edu.cn/CRAN/ eScience Center, Nanjing University
https://mirrors.sjtug.sjtu.edu.cn/cran/ Shanghai Jiao Tong University
https://mirrors.sustech.edu.cn/CRAN/ Southern University of Science and Technology (SUSTech)
https://mirrors.nwafu.edu.cn/cran/ Northwest A&F University (NWAFU)


4.R语言下载

R语言下载


5.R语言的历史

R语言来自S语言,是S语言的一个变种。S语言由Rick Becker, John Chambers, Alan Wilks等人在贝尔实验室开发, 著名的C语言、Unix系统也是贝尔实验室开发的。

S语言第一个版本开发于1976-1980,基于Fortran; 于1980年移植到Unix, 并对外发布源代码。 1984年出版的“棕皮书” (R. A. Becker and Chambers 1984) 总结了1984年为止的版本, 并开始发布授权的源代码。 这个版本叫做旧S,与我们现在用的S语言(R语言)有较大差别, 比如, 不支持自定义函数。

1984–1988对S进行了较大更新, 变成了我们现在使用的S语言,称为第二版。 1988年出版的“蓝皮书” (Richard A. Becker, Chambers, and Wilks 1988) 做了总结。

1992年出版的“白皮书” (J. M. Chambers and Hastie 1992) 描述了在S语言中实现的统计建模功能, 增强了面向对象的特性。软件称为第三版,这是我们现在用的多数版本。

1998年出版的“绿皮书” (John M. Chambers 1998) 描述了第四版S语言,主要是编程功能的深层次改进。 现行的S系统并没有都采用第四版,S-PLUS的第5版才采用了S语言第四版。

S语言商业版本为S-PLUS, 1988年发布,现在为Tibco Software拥有。 命运多舛,多次易主。现在已经基本被R语言取代。

R是一个自由源代码软件,GPL授权, 最初由新西兰Auckland大学的Ross Ihaka和Robert Gentleman于1997年发布, R实现了与S语言基本相同的功能和统计功能。 现在由R核心团队开发,但全世界的用户都可以贡献软件包。


二、R语言环境

R是一套由数据操作、计算和图形展示功能整合而成的套件。包括:有效的数据存储和处理功能,一套完整的数组(特别是矩阵)计算操作符,拥有完整体系的数据分析工具,为数据分析和显示提供的强大图形功能,一套(源自S语言)完善、简单、有效的编程语言(包括条件、循环、自定义函数、输入输出功能)。
在这里使用“环境”(environment)是为了说明R的定位是一个完善、统一的系统,而非其他数据分析软件那样作为一个专门、不灵活的附属工具。

1.Windows安装

1.1 去 R 语言下载的镜像站点的列表下载

R语言简介、环境与基础语法及注释

1.2 选择版本进行下载

R语言简介、环境与基础语法及注释
R语言简介、环境与基础语法及注释

1.3 点击运行

R语言简介、环境与基础语法及注释
R语言简介、环境与基础语法及注释

1.4 一路默认,安装完毕!

R语言简介、环境与基础语法及注释
R语言简介、环境与基础语法及注释


2.Linux安装

R语言适用于多版本的Linux系统。

各版本Linux的各有不同。具体的安装步骤在上述资源中有对应的教程。但是,如果你是在赶时间,那么你可以用yum命令,如下所示的安装指令

2.1 安装R

$ yum install R

以上命令将安装R编程的核心功能与标准包,额外的包需要另外安装,而后你可以按如下提示

2.2 启动R

$ R

R version 3.2.0 (2015-04-16) -- "Full of  Ingredients"          
Copyright (C) 2015 The R Foundation for Statistical Computing
Platform: x86_64-redhat-linux-gnu (64-bit)
        
R is free software and comes with ABSOLUTELY NO WARRANTY.
You are welcome to redistribute it under certain conditions.
Type 'license()' or 'licence()' for distribution details.
            
R is a collaborative project with many  contributors.                    
Type 'contributors()' for more information and
'citation()' on how to cite R or R packages in publications.
       
Type 'demo()' for some demos, 'help()' for on-line help, or
'help.start()' for an HTML browser interface to help.
Type 'q()' to quit R.

>  

现在,您可以在R语言提示符下使用install命令安装所需的软件包。 例如,以下命令将安装为3D图表所需的plotrix软件包。

2.3 安装plotrix软件包

> install.packages("plotrix")

三、R语言基础语法及注释

1.R语言基本语法

我们将开始学习R语言编程,首先编写一个“你好,世界! 的程序。 根据需要,您可以在R语言命令提示符处编程,也可以使用R语言脚本文件编写程序。 让我们逐个体验不同之处。

1.1 命令提示符

如果你已经配置好R语言环境,那么你只需要按一下的命令便可轻易开启命令提示符

$ R

这将启动R语言解释器,你会得到一个提示 > 在那里你可以开始输入你的程序,具体如下。

> myString <- "Hello, World!"
> print ( myString)
[1] "Hello, World!"

在这里,第一个语句先定义一个字符串变量myString,并将“Hello,World!”赋值其中,第二句则使用print()语句将变量myString的内容进行打印。

1.2 脚本文件

通常,您将通过在脚本文件中编写程序来执行编程,然后在命令提示符下使用R解释器(称为Rscript)来执行这些脚本。 所以让我们开始在一个命名为test.R的文本文件中编写下面的代码

# My first program in R Programming
myString <- "Hello, World!"

print ( myString)

将上述代码保存在test.R文件中,并在Linux命令提示符下执行,如下所示。 即使您使用的是Windows或其他系统,语法也将保持不变。

$ Rscript test.R 

当我们运行上面的程序,它产生以下结果。

[1] "Hello, World!"

2.注释

注释能帮助您解释R语言程序中的脚本,它们在实际执行程序时会被解释器忽略。 单个注释使用#在语句的开头写入,如下所示

# My first program in R Programming

R语言不支持多行注释,但你可以使用一个小技巧,如下

if(FALSE) {
   "This is a demo for multi-line comments and it should be put inside either a single
      OR double quote"
}

myString <- "Hello, World!"
print ( myString)

虽然上面的注释将由R解释器执行,但它们不会干扰您的实际程序。 但是你必须为内容加上单引号或双引号。


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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Golang Channel 详细原理和使用技巧

1.简介 Channel(一般简写为 chan) 管道提供了一种机制:它在两个并发执行的协程之间进行同步&#xff0c;并通过传递与该管道元素类型相符的值来进行通信,它是Golang在语言层面提供的goroutine间的通信方式.通过Channel在不同的 goroutine中交换数据&#xff0c;在goroutine之间…

yolov9训练

目录 说明 1、下载代码安装新的python环境 2、准备数据 3、修改代码 说明 本文参考该博主的文章&#xff0c;在已经有数据的情况&#xff0c;进行简单总结。需要详细版见原文链接如下&#xff1a;YOLOV9保姆级教程-CSDN博客 1、下载代码安装新的python环境 代码下载&…

阿里巴巴面试题:亿级商品如何存储?

嗨,各位小米粉丝们,欢迎来到小米的科技分享专栏!今天我们要聊的话题可是相当的烧脑,它来自阿里巴巴的一道面试题:亿级商品如何存储?别急,让我一一为你解密! 分库分表 当我们面对需要处理海量数据的情况时,基于 Hash 取模和一致性 Hash 实现分库分表是一个常见且有效…

【机器学习】生成对抗网络GAN

概述 生成对抗网络&#xff08;Generative Adversarial Network&#xff0c;GAN&#xff09;是一种深度学习模型架构&#xff0c;由生成器&#xff08;Generator&#xff09;和判别器&#xff08;Discriminator&#xff09;两部分组成&#xff0c;旨在通过对抗训练的方式生成逼…

【大前端】EChart 多系列柱状图绘制背景图

背景 在ECharts中&#xff0c;设置柱状图背景色&#xff0c;可通过backgroundColor设置&#xff0c;但仅限于单系列柱状图&#xff0c;所以在多系列柱状图中就需要用下面的方式设置 解决方案 1. xAxis.splitArea 如果设置的背景图的宽度占比为100%&#xff0c;则可以使用该方…

聊聊最近成交的一个小外贸订单

聊聊最近的一个小订单的故事吧&#xff0c;这个客户是个新手买家&#xff0c;也属于第一次在网上购物&#xff0c;客户在年前开始询问产品&#xff0c;而且当时正好是假期。 其实按照正常的处理思路来说&#xff0c;应该告诉客户现在是假期&#xff0c;大概是在什么时候恢复工…

详解点云PFH点云特征直方图原理(matlab代码实现)

原理&#xff1b; 原始论文下载【免费】(2008PFH)点云特征直方图原创论文&#xff0c;2008年资源-CSDN文库https://download.csdn.net/download/Vertira/88911005 PFH 特征描述是基于特征点&#xff08;keypoint&#xff09;与其邻域点的空间几何关系来编码的。如图1所示&…

深度学习_19_卷积

理论&#xff1a; 目前问题在于识别图片所需要的模型权重数量会比较大 一般图片像素在12M也就是一千两百万像素&#xff0c;要用模型对其整体识别的话&#xff0c;需要至少一千两百万权重&#xff0c;那也仅仅是线性模型&#xff0c;若用多层感知机的话&#xff0c;模型的数据…

B站自研色彩空间转换引擎

本期作者 1. 背景 色彩空间&#xff08;Color Space&#xff09;是一种数学模型&#xff0c;用于描述和表示颜色的方式。不同的色彩空间有不同的用途和特点&#xff0c;可以用于不同的应用&#xff0c;如图像处理、计算机图形、印刷、摄影等领域。它一般用于描述设备的色彩能…

javaWebssh药品进销存信息管理系统myeclipse开发mysql数据库MVC模式java编程计算机网页设计

一、源码特点 java ssh药品进销存信息管理系统是一套完善的web设计系统&#xff08;系统采用ssh框架进行设计开发&#xff09;&#xff0c;对理解JSP java编程开发语言有帮助&#xff0c;系统具有完整的源代码和数据库&#xff0c;系统主要采用B/S模式开发。开发环境为TOM…

Unity2023.1.19_DOTS_JobSystem

Unity2023.1.19_DOTS_JobSystem 上篇我们知道了DOTS是包含Entity Component System&#xff0c;Job System&#xff0c;Burst compiler三者的。接下来看下JobSystem的工作原理和具体实现。 简介&#xff1a; 官方介绍说&#xff1a;JobSystem允许您编写简单而安全的多线程代…

【Docker】Docker:解析容器化技术的利器与在Linux中的关键作用

&#x1f34e;个人博客&#xff1a;个人主页 &#x1f3c6;个人专栏&#xff1a;Linux ⛳️ 功不唐捐&#xff0c;玉汝于成 目录 前言 正文 Docker 是什么&#xff1f; Docker 的作用 Docker 在 Linux 中的重要性 结语 我的其他博客 前言 随着软件开发的不断发展&…

虚拟化之CPU

一 cpu 1 如何查看内核版本&#xff1a;uname -r 2 如何查看操作系统的发行版本&#xff1a;cat /etc/redhat-release 3 计算机系统子的系统 cpu处理器memory内存storage存储network 网络Display显示 4 进程模式 用户模式&#xff08;user mode&#xff09;主要处理I/O的模…

2024年【G1工业锅炉司炉】考试报名及G1工业锅炉司炉模拟考试

题库来源&#xff1a;安全生产模拟考试一点通公众号小程序 G1工业锅炉司炉考试报名是安全生产模拟考试一点通生成的&#xff0c;G1工业锅炉司炉证模拟考试题库是根据G1工业锅炉司炉最新版教材汇编出G1工业锅炉司炉仿真模拟考试。2024年【G1工业锅炉司炉】考试报名及G1工业锅炉…

HarmonyOS 获取位置信息

1. HarmonyOS 获取位置信息 1.1. 官方文档 权限申请 位置服务 1.2. 权限申请 1.2.1. 配置位置权限信息 "requestPermissions": [//API9之前只申请这个就可以米级定位{name: ohos.permission.LOCATION},//API9之前申请的权限//API9后两个权限同时申请才可以获取米…

链路负载均衡之DNS透明代理

一、DNS透明代理 一般来说&#xff0c;企业的客户端上都只能配置一个运营商的DNS服务器地址&#xff0c;DNS服务器通常会将域名解析成自己所在ISP内的Web服务器地址&#xff0c;这将导致内网用户的上网流量都集中在一个ISP的链路上转发&#xff0c;最终可能会造成链路拥塞&…

C++之智能指针

为什么会有智能指针 前面我们知道使用异常可能会导致部分资源没有被正常释放, 因为异常抛出之后会直接跳转到捕获异常的地方从而跳过了一些很重要的的代码, 比如说下面的情况&#xff1a; int div() {int a, b;cin >> a >> b;if (b 0)throw invalid_argument(&q…

windows下的反调试探究——原理

原理 我们在前面介绍了一些反调试的手段&#xff0c;基本上都是通过对内核的某个标志进行修改来达到反调试的效果&#xff0c;但是这里有一个问题就是&#xff0c;如果分析人员对我们的样本的API进行了hook&#xff0c;那么我们的反调试手段都将作废&#xff0c;也就是说我们还…

【LeetCode】升级打怪之路 Day 13:优先级队列的应用

今日题目&#xff1a; 23. 合并 K 个升序链表 | LeetCode378. 有序矩阵中第 K 小的元素 | LeetCode373. 查找和最小的 K 对数字 | LeetCode703. 数据流中的第 K 大元素 | LeetCode347. 前 K 个高频元素 | LeetCode 目录 Problem 1&#xff1a;合并多个有序链表 【classic】LC 2…

2核4G服务器支持多少人在线?腾讯云全访问测试

腾讯云轻量应用服务器2核4G5M配置一年优惠价165元、252元15个月、三年756元&#xff0c;100%CPU性能&#xff0c;5M带宽下载速度640KB/秒&#xff0c;60GB SSD系统盘&#xff0c;月流量500GB&#xff0c;折合每天16.6GB流量&#xff0c;超出月流量包的流量按照0.8元每GB的价格支…