每天 5 分钟,轻轻松松上手 R 语言(二)

每天 5 分钟,轻轻松松上手 R 语言(二)

今天我们来看一下入门 R 语言的几个小操作。

R 语言的环境操作

1
2
3
4
5
6
7
8
9
10
ls()  # 获取当前的所有变量
rm(list = ls()) # 清空当前变量
getwd() # 获取当前工作目录
setwd('/home/rstudio/') # 设置工作目录
assign('x', 1) # 创建变量 x,值为1
get('xx') # 获取 x 的变量值
exists('xx') # 判断是否存在叫 x 的变量
objects() # 返回全部变量名称
x = .GlobalEnv # 定义一个全局变量 x
x <- 1 # 赋值操作

Tips: 我们这里说的环境是 R 语言的环境不是操作系统的环境,变量赋值 <-前后都有一个空格,这是编码习惯,看着美观,另外
<-= 推荐用赋值符号,RStudio 中可以使用 alt+- 快捷输入;单引号和双引号可以通用;变量的命名推荐使用 snake_case 命名法,也就是使用小写单词,并用_分隔,如 tidy_friday

R 语言的文件操作

我们学习数据分析,难免要跟文件打交道,接下来我就用几个简短的例子来演示下 R 中的文件操作,关于数据文件的读写,后面我们会有专门的章节讲解:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
list.files(path) # 获取路径下的所有文件
cat('tidy\n', file='A') # 创建一个文件 A,文件内容是'tidy',’\n’表示换行
cat('friday\n', file='B') # 创建一个文件 B,文件内容是'friday'
file.append('A', 'B') # 将文件 B 的内容附到 A 内容的后面,注意没有空行
file.create('A') # 创建一个文件 A, 注意会覆盖原来的文件
file.append('A', rep('B', 10)) # 将文件 B 的内容复制10次,并先后附到文件 A 内容后
file.show('A') # 新开工作窗口显示文件 A 的内容
file.copy('A', 'C') # 复制文件 A 保存为 C 文件,同一个文件夹
dir.create('tmp') # 创建名为 tmp 的文件夹
file.copy(c('A', 'B'), 'tmp') # 将文件夹拷贝到 tmp 文件夹中
list.files('tmp') # 查看文件夹 tmp 中的文件名
unlink('tmp', recursive=F) # 如果文件夹 tmp 为空,删除文件夹 tmp
unlink('tmp', recursive=TRUE) # 删除文件夹 tmp,如果其中有文件一并删除
file.remove('A', 'B', 'C') # 移除三个文件

Tips: 使用 r 语言可以方便的增删改查系统的文件,不必来回切换界面,可以极大提高我们的工作效率;

R 语言的包操作

R 语言安装包通常有以下几个途径,依优先级如下:

  • cran install.packages() # 官方的源,包的版本最稳定
  • GitHub devtools::install_github() # 有些包可能处于快速开发中,github 源能体验到最新的特性,但可能不稳定,另外有些包可能只在 github 托管
  • 源码 install.packages('path', repos=NULL) # 将源码的压缩包下载到本地,传入对应路径即可,以上两种方法都失败时可以尝试:
1
2
3
4
5
6
7
8
9
10
11
12
13
getOption('defaultPackages') # 查看默认加载的包
(.packages()) # 查看已加载的包
(.packages(all.available = TRUE)) # 显示全部可用的包
install.packages('hchinamap') # 安装包
remove.packages('hchinamap') # 卸载包
library(devtools) # 加载包
devtools::install_github('ggplot2') # 利用 devtools 从 github 等来源安装包
detach('hchinamap') # 移除包
dplyr::select() # 当几个包有同名函数,用包名::函数名()调用,同时可以调用未加载包
ls('package:hwordcloud') # 查看 ggplot2 包内函数
help('lm') # 等价于?'lm'
help(package=MASS) # 查询包信息
help.search('normal') # 查找和 normal 有关的函数,等价于??'normal'

Tips: detach 是从当前加载环境中移除,remove 是彻底删除,切记不要误用

R 语言的几个基本操作我们就演示到这里,你掌握了吗?快去试验一下吧!

# R

评论

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×