Rstudio快捷方式
清空命令行窗口:ctrl + L
清空变量:rm(list = ls())
注释与反注释 ctrl + shift + C
打开新文件:ctrl + shift + N
代码分块:ctrl + shift + R
定义函数:ctrl + shift + U
单行运行程序: ctrl + 回车
从头运行程序: ctrl + shift + 回车
R常用函数
install.packages([name]) # 有name的时候安装函数包,没有的时候查看所有的包并附带版本
library([name]) #有name的时候为加载包,没有的时候查看拥有的包
help(package = ‘name’) # 查看包里面函数的帮助信息
(.package()) # 查看目前工作中加载的包
detach(‘package:name’) # 反加载包 这个参数有点东西…
R与数据
data()查看数据包
R里面的数据格式为.RData
load(path)加载数据 #load(‘example1_1.Rdata’)
head(name) #查看前几行 #head(example1_1)
str(name) #查看数据结构 #str(example1_1)
升序降序
升序:newdata <- table1_1[order(table1_1KaTeX parse error: Expected 'EOF', got '#' at position 9: name),] #̲按学生姓名字母升序排列,并存储…name,decreasing = True),]
or newdata <- table1_1[order(table1_1$-name),]
生成随机数
set.seed() #产生随机数种子
rnorm() 正态分布 rexp() 产生指数分布随机数 rchisq() 产生卡方分布 runif() 产生均匀分布
抽样
sample() 简单随机抽样 Strata() 分层抽样 sampleBy() 系统抽样 clust() 整群抽样
R绘图
参见PDF
R数据类型
矩阵(matrix)
创建矩阵
matrix(data=NA,nrow=int,ncol=int,byrow=FALSE)
rnorm(x,mean=.sd=) 默认生成均值为0方差为1的正太分布随机数
设定矩阵的行名和列名:
matrix(1:6,nrow=3,ncol=2,byrow=T,dimnames=list(c(“A”,“B”,“C”),c(“boy”,“girl”)))
也可用diag(x)创建对角线矩阵
返回矩阵的对角线的值
diag(x) 返回的是矩阵的对角线元素的对象,功能如下:
1.获得对角线的值 x = diag(x)
2.改变对角线的值 diag(x) = c(1,2,3)
3.创建矩阵,除对角线以外其他全部为0 A=diag(c(1,2,3))
查看矩阵是否为上三角或者下三角矩阵
lower.tir() upper.tir() 分别返回矩阵下三角和上三角的对象
lower.tir(x) 返回的是一个布尔型的矩阵,下三角元素的位置全为Ture
x[lower.tir(x)] 返回x下三角全部的元素形成的向量,可对这些元素进行修改从而改变其在矩阵里面的值
矩阵的索引、修改、合并等基础操作
R的索引与条件索引
x[c(),c()] #R里面的索引与matlab类似但是matlab x[:,:] 但是R里面不用 :
x[,1]>0
#例如取出第一列中大于0的元素
x[x[,1]>0,1]
R里面的矩阵合并
rbind(a,b) cbind(a,b) 第一个要求矩阵要有先对的列,第二个人要求有相同的行
矩阵的计算
R解方程
一个线性方程组:Ax=b
x <- solve(a,b,…)
当b没有输入的时候,默认返回a的逆
数组
x <- array(1:24,c(3.2.4)) #创建高维数组
数据框(dataframe)
x =
R里面的列表
x = list(x = 1:6,y = matrix(1:4,nrow = 2))
相当于matlab里面的元胞数组,也python里面的字典