一、R语言简介

R语言是专业的统计分析软件,来自著名数据科学网站(http://www.kdnuggets.com/)发起的一个2019年统计分析和数据挖掘软件使用情况的调查结果:

表明R语言是该领域近年来最受欢迎的软件之一。

R语言的优势:

(1) 免费开源,软件体积小根据需要安装扩展包,兼容各种常用操作系统;

(2) 专门为统计和数据分析开发的语言,有丰富的扩展包;

(3) 拥有顶尖水准的制图功能;

(4) 面向对象,简单易学。

缺点:内存管理机制较差,不擅长处理循环(这是老观念了,现在的R处理循环并不慢,处理循环速度的关键提升是:(1)提前分配存储空间,(2)选择合适的存放数据的数据结构),跑大数据量的程序速度慢(现在有data.table包是快速处理大数据的利器)。

二、R语言软件平台搭建

到R语言官网https://www.r-project.org/ 或镜像站:

The Comprehensive R Archive Network

下载最新版安装,安装时可选择32或64位版本。

安装R语言集成开发环境Rstudio,下载地址:

https://www.rstudio.com/products/rstudio/download

图1 RStudio操作界面

三、扩展包常用操作

1. 查看已安装的程序包

(.

:程序包默认安装在…RR-3.6.0library目录。

2. 加载程序包

library

若没有安装该包,则会提示错误:

Error 

3. 安装程序包

务必先修改镜像:

【Tools】—【Global Options…】,在Options窗口点“Packages”,修改CRAN mirror为

China
(Beijing 4) [https] - TUNA Team, Tsinghua University

命令安装:

install

注:若命令安装失败,则需要下载扩展包手动安装。

4. 删除扩展包

remove

5. 更新包

update

更新所有已安装的包。

四、R语言常用操作

1. 帮助help:help(函数名) 或者 ? 函数名

使用R帮助是一种快速学习和掌握R的有效方法。

2. 命令窗口清屏:Ctrl + L 或者

3. 清除当前内存变量:rm(变量名)

清除所有变量:rm(list=ls(all=TRUE)),或者

4. 获取或设置当前工作目录

getwd

setwd

注意:路径地址中的“”必须用“/” 或“”代替。

5. 保存和加载数据

save函数将工作空间中的数据保存为R语言数据文件(默认格式为.Rda),load函数加载R数据文件。

setwd

save

6. 脚本文件的输入和输出

(1) 在当前会话中执行一个脚本(中的R语句),常用于将某个函数打包调用:

source(“路径/脚本文件.R”)

(2) 将输出重定向到文件“文件名.txt”中(文本输出),若文件已经存在,则它的内容将被覆盖:

sink

使用参数append=TRUE可以将文本追加到文件后,而不是覆盖它;参数split=TRUE可将输出同时发送到屏幕和输出文件中;

不加参数调用sink()函数将重回“仅向屏幕返回输出结果”。

(3) 要重定向图形输出,使用下列函数即可,最后用dev.off()将输出返回到终端:

函数

输出

pdf

pdf文件

win

Windows图元文件

png

png文件

jpeg

jpg文件

bmp

bmp文件

postscript

PostScript文件

例如,执行代码:

sink

脚本文件script1.R中的代码将执行,结果也将显示在屏幕上,另外,文本输出将被追加到文件myoutput中,图形输出将保存到文件mygraphs.pdf中

继续执行代码:

sink

脚本文件script2.R中的代码将执行,结果显示在屏幕上(此时不再有文本或图形输出)。

7. 赋值

注意R语言中赋值不是用“=”,而是“<-”或“->”,例如

x 

R也允许用“=”赋值,但不是标准语法,有时会出问题。

R是一种基于对象的语言,即在定义类的基础上,创建与操作对象;数值向量、函数、图形等都是对象。

主要参考文献:

  1. 张良均,谢佳标,杨坦,肖刚. R语言与数据挖掘. 机械工业出版社,2016.
  2. R常见问题解答——153分钟学会R. 2008.

作者:张敬信
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

R 语言怎么保存工作目录到当前路径_【R语言基础】01.R语言软件环境搭建及常用操作...相关推荐

  1. R 语言怎么保存工作目录到当前路径_第一讲 R基本介绍及安装

    今天是第一讲,带你走进R的世界.R是用于统计计算和数据可视化的免费且功能强大的编程语言.R可用于计算各种经典的统计检验,以及各种最新的统计学建议方法.以小编使用R近10年的经验来看,论文中有什么最新最 ...

  2. R 语言怎么保存工作目录到当前路径_C语言探索之旅 | 第二部分第七课:文件读写...

    内容简介 前言 文件的打开和关闭 读写文件的不同方法 在文件中移动 文件的重命名和删除 第二部分第八课预告 1. 前言 上一课 C语言探索之旅 | 第二部分第六课:创建你自己的变量类型 之后,我们来学 ...

  3. Java 基础-01 Java语言入门

    文章目录 Java 基础-01 Java语言入门 1.计算机基本概念 1.1 计算机概述 1.2 计算机组成 1.3 CPU.内存与硬盘 2.软件基本概念 2.1 软件概述 2.2 人机交互方式 2. ...

  4. c语言不会可以学好java吗_有人说学了C语言,两天就能学会Java,两个星期就可以找工作?...

    作为一个过来人来说,编程如果真的那么简单就不会导致现在各大公司还喊着招不到人的情况了,虽然编程领域里面有触类旁通的说法,但这个说法只是针对于对于一种编程已经掌握到一定程度了,不是简单的学过或者做过就可 ...

  5. c语言 数组、字符串的形参格式_华中师范大学计算机考研874C语言笔记(一)

    运算符优先级 自右向左记忆口诀 条件赋值自增减(?: =/+=/-= ++ -- ) 指针取址按位反 (* & ~) 内存非负强制转 (sizeof ! - (type)) define 前面 ...

  6. python语言通过()来体现语句逻辑关系_【单选题】Python语言通过( )来体现语句之间的逻辑关系。...

    [单选题]Python语言通过( )来体现语句之间的逻辑关系. 更多相关问题 根据<民事诉讼法>的规定,当事人可以委托诉讼代理人()A.1人B.2人C.1-2人D.2-3人 根据我国< ...

  7. c语言循环写回合制小游戏_告别黑框框——用C语言Easyx图形库实现图形界面

    很早以前就接触到了Easyx图形库,当时感叹还有这么简单的C图形库供我们使用.后开用Easyx做过推箱子.图形界面钢琴等等简单的小游戏.今天给大家介绍一下Easyx图形库. Easyx图形库是针对C+ ...

  8. 求10 翻译c语言,求助:谁能帮我翻译下最基础的C语言,我是新手,谢谢了!

    main() { int i,j,p,q,s,n,a[11]={127,3,6,28,54,68,87,105,162,18};/*定义i,j,q,p,s,n和a[11],并对a数组赋值*/ for( ...

  9. Java基础部分 阶段一(语法基础)1、开发环境搭建(计算机编程及开发语言)

    day01 一.编程基础 计算机=硬件+软件 软件分为:系统软件.应用软件 软件开发:使用编程语言进行编写能够实现若干功能的应用. (1)编译型(直接二进制) 优点:执行效率高 缺点:平台依赖重,跨平 ...

最新文章

  1. android点击失效,android点击无效验证的解决方法
  2. reentrantlock 使用
  3. JDBC编程的事务处理
  4. iOS10 UI教程视图的中心位置
  5. 计算机CPU哪家好,2019年电脑cpu排行榜_电脑CPU哪个好 电脑CPU排行榜2019
  6. 视频回顾 | 微信生态数字化运营进阶课大全!
  7. python mysql写入速度加快_解决python写入mysql中datetime类型遇到的问题
  8. TensorFlow搭建简易Wide and Deep 模型
  9. 游戏运营杂谈之-----IB推荐算法
  10. 华为云整合三朵云能力,第二阶段决战大政企战场
  11. 抖音很火的失恋表白网页模板
  12. matlab图片白边_Matlab论文插图消除白边的5种方法
  13. Spark 1.0.1源码安装
  14. 「随机化快排」期望运行时间证明
  15. c# 实现圆形的进度条(ProgressBar)
  16. 不需要数据库的php迷你博客程序,GitHub - Smilefish0/miniblog: 一个不需要数据库、轻量级、微型、开源的博客程序!...
  17. 访问网络共享找不到网络名的解决方案
  18. 微信公众号wifi链接php,TP路由器实现关注微信并认证后连接WIFI上网
  19. 二清,是“担保支付”,还是“雁过拔毛”
  20. Staking来袭,10亿级市场打开! | 火星总编时刻NO.31

热门文章

  1. android蓝牙通信_使用Arduino构建OLED显示屏与Android手机接口的智能手表
  2. html控制图的宽,用JointJS做一个简单的功能控制图
  3. linux80端口检查,Linux下基于端口的服务检查脚本
  4. VS2013提示错误应输入表达式
  5. 【每日SQL打卡】​​​​​​​​​​​​​​​DAY 21丨报告系统状态的连续日期【难度困难】​
  6. Go语言,在Ubuntu9.10和Windows安装
  7. 怎么判断linux22端口是否通,在Linux环境下使用SSH判断端口是否通(示例代码)
  8. servlet如何使用session把用户的手机号修改_SpringBoot源码学习系列之嵌入式Servlet容器...
  9. html中如何让图片交错,HTML5/Canvas 光圈交错幻觉
  10. java dom cdata_java – 通过DOM解析器从XML处理CDATA