barplot(a) #直方图 数值型变量--每一个独立 VS hist(a) #画直方图
barplot(table(a)) #频数分布直方图
stem(a) #茎叶图
boxplot (a) #箱线图
plot() #散点图
tapply(mpg,cyl,mean) #按分组变量cyl计算mpg的分组平均数mean(mpg) # 计算平均值
mean(mpg,trim=.1) # 计算截去10%的平均值
tapply(mpg,cyl,mean) #按分组变量cyl计算mpg的分组平均数
IQR(mpg) # 计算四分位数的极差
quantile(mpg) = fivenum(mpg) # 计算样本常用的分位数:极小、极大、中位数及两个四分位数quantile(mpg, probs=c(0.1,0.25,0.75)) #计算由向量prob给定的各概率处的样本分位数(10%.25%.75%)
summary(mpg) #最小值、第一四分位数、中位数、平均数、第三分位数和最大值
sd() #标准差 var() #方差 mad() #中位绝对离差
z=lm(cyl~mpg) # 拟合线性回归(注意:用~分割,不是逗号)
cor(cyl,mpg) # 相关系数
# 残差分析
lm.res=lm(cyl~mpg) # 将回归分析的结果作为对象,保存到 lm.res
lm.resids=resid(lm.res) # 提取残差向量
plot(lm.resids)# 考察残差的散点图
hist(lm.resids)# 考察残差的直方图
qqnorm(lm.resids)# 残差的QQ图是否落在直线上
ls()函数显示所有在内存中的对象,ls.str()显示所有对象的详细信息
rm() # 删除对象使用
rm(x) 删除对象x
rm(x, y)删除对象x,y
rm(list=ls())删除内存中所有对象
rm(list=ls(pat="^m")) 删除对象以字母m开头的对象
rep(x, time = , length = , each = ,) rep表示重复的意思???
examples:
> rep(1:4, 2)
[1] 1 2 3 4 1 2 3 4
> rep(1:4, each = 2)
[1] 1 1 2 2 3 3 4 4
> rep(1:4, each = 2, len = 10)
[1] 1 1 2 2 3 3 4 4 1 1
rep(c(3,5),c(2,4)) #表示出2遍3,,4遍5
单独出数字,只能用:表连续,不连续则赋予c 建立字符向量,必须加“”号,c赋值,后边无逗号所有转化为因子都用factor() 再转化为数值因子levels(a)=c(1,2,3,4)
所有转化为因子都用factor()length表示截至长度,label别拼写错了,有多少类就有多少labels,并不是类别。所以是前面的数字。 []中括号表示取值。负号表示不取某个值 # 带name属性的字符串向量可以通过name提取 根据逻辑向量取值函数gl()能产生规则的因子序列,用法为gl(k,n),其中k是水平数,n是每个水平重复次数。length选项指定产生数据的个数,label指定水平因子的名字。
数组 array
格式: array(data,dim,dimnames)
data为向量,其元素用于构建数组;dim为数组的维数向量(数值型);dimnames为各维度名称构成的向量,缺省为空。
数组用array矩阵 matrix
x=matrix(1:12,nr=3,nc=4) #表示从1-12之间取值,填充3行,4列。
diag() #生成单位阵
x=diag(4) x=diag(5) d单位阵数值可以用向量c替换 重命名x, 写全称:rownames,colnames。 修改通过行填充数据,byrow=TRUE. 跟t(x)转置差不多合并表格
x*x表示x表格的数值都平方 按照上边的表格对行和列求平均# 变量之间的关系可以通过成对数据散点图考查 pairs(Puromycin,panel=panel.smooth) xtabs (~mpg+disp,data=文件) #xtabs是根据分类因子形成一个列连表
数据框添加新变量
字符向量的建立
z = c("green", "bluesky", "-99")
labs=paste("x",1:10,seq=",") #x1 x2 x3 x4 x5 x6 x7 x8 x9 x10
labs=paste("x,y",1:3) #xy1 xy2 xy3
labs=paste("x,y",1:3,seq=",") #x,y1 x,y2 x,y3
补充:
a=c("M","F","M","F","M","M") #table表示分类计数(频数)
table(a)
a
F M
2 4
数据框的建立
a=c(41,22,23,43,52)
b=1:5
b=data.frame("性别"=b,"年龄"=a)
#建立了两纵行(性别,年龄),性别=1,2,3,4,5,年龄=41,22,23,43,52
正态分布函数rnorm()
泊送分布函数rpois()
指数分布函数rexp()
Gamma分数函数rgamma()
均匀分布函数runif()
二项分布函数rbinom()
几何分布函数rgeom()
rbind(x1, x2) 注:r是row的意思,即行,按行组成矩阵。
cbind(x1, x2) 注c是column的意思,即列,按列组成矩阵。
apply(x, 2, mean) --对x在列的方向求平均值,如果2改成1则对行求平均值
安装包代码
#if (!requireNamespace("BiocManager", quietly = TRUE))
#install.packages("BiocManager")
#BiocManager::install("pheatmap")
网友评论