[1] 学习初步

1.1 参考资料

R语言教程 李东风
R-bloggers
处理更大的数据(如 10~100 GB)data.table

1.2 R与R Stuido

Windows R各个版本:https://cran.r-project.org/bin/windows/base/old/
Windows R Studio: https://cran.r-project.org/bin/windows/Rtools/history.html

1.3 下载及导入包

  1. # 安装tidyverse包
  2. install.packages("tidyverse", lib="C:/R/R-4.2.0/library")
  3. # 若出现package ‘xxx’ is not available for this version of R,可以用以下操作
  4. #install.packages()
  5. # 导入tidyverse包
  6. library(tidyr, lib.loc = "C:/R/R-4.2.0/library")
  7. # 取消导入tidyverse包
  8. detach("package:tidyverse", unload = TRUE)
.libPaths("C:/R/R-4.2.0/library")  

# 永久性更改,新建一个初始启动文件
file.edit('~/.Rprofile')
# Rprofile文件写下如下命令,保存后重启R Studio
.libPaths("C:/R/R-4.2.0/library")

1.4 tips

# 获取当前工作文件夹所在位置
getwd()

# 转变文件工作路径
setwd()
x = readline()
# 然后把WINDOWS路径直接复制粘贴过去,回车。然后键入:
gsub("\\\\", "/", x)

[2] 数据

2.1 变量命名规则

  • 只有字母开头(区分大小写),数字,下划线,英文点号可以出现
  • 英文点号后面不能直接接数字

    2.2 数据类型

rec <- list(name="李明", age=30, scores=c(85, 76, 90))
#访问单个列表的元素必须使用两重方括号格式进行访问 or 用“$”进行访问
rec[3]
## $score
##[1] 85 76 90
rec[[3]] 
## [1] 85 76 90
rec$scores
## [1] 85 76 90
as.numeric()
as.character()
factor(c(as.character(x1), as.character(x2)))

[2] 基本语法

^乘方
&& || 短路的与、或逻辑
%/% 整除 %% 取余 %*%线代中矩阵的乘法
%>% 把左边的输出传递给右边的函数作为输入,需先library(dplyr)
.匹配除换行符 \n 之外的任何单字符。要匹配符号 . 使用\.(转义)
dim()用于获取或设置指定矩阵、数组或 DataFrame 的维数
~:用于连接公式中响应变量和自变量,等同于数学公式中的等号

[3] 基本操作

 devtools::session_info(c("tidyverse"))

想要明确指出某个函数( 或数据集) 的来源, 那么可以使用特殊语法形式package::function()

# 使用的是ggplot2 包中的ggplot() 函数
ggplot2::ggplot()
ggplot(data = <DATA>) +
  <GEOM_FUNCTION>(mapping = aes(<MAPPINGS>))

ggplot() 的第一个参数是要在图中使用的数据集。
ggplot2 中的每个几何对象函数都有一个mapping 参数,这个参数定义了如何将数据集中的变量映射为图形属性。mapping 参数总是与aes() 函数成对出现,

[4] 画图

ggplot2 提供了30 多种几何对象,其扩展包甚至提供了更多(更多样例详见:https://www.ggplot2-exts.org
ggplot2 速查见https://www.rstudio.com/resources/cheatsheets/

geom_bar(stat = "identity",color = "black",size = 1.5,alpha = 0.8,width = 0.6)

stat:设置统计方法,有效值是count和 identity;count:条形的高度是变量的数量,identity:是变量的值; position:位置调整,有效值是stack、dodge和fill;默认值是stack:两个条形图堆叠摆放,dodge:两个条形图并行摆放,fill:按照比例来堆叠条形图,每个条形图的高度都相等,但是高度表示的数量是不尽相同。 alpha:颜色透明度,0到1,1颜色最深 width:条形图的宽度,是个比值,默认值是0.9 color:条形图的线条颜色 fill:条形图的填充色

subset() 是对数据的某些字段进行操作
intersect()用于查找两个对象的交集

venn() 韦恩图