wordpress怎么安装主题,企业网站seo优化交流,爬闪数媒 网站建设,网上学设计哪个平台好视频教程
大家可以先做一做R语言基础小测验#xff0c;看看自己是否需要跟我们5.5h入门R语言的课程。
先上教程视频#xff0c;B站同步播出#xff1a;
https://www.bilibili.com/video/BV1miNVeWEkw
完整视频回放和答疑服务可见#xff1a;5.5h入门R语言
本节课程视频…视频教程
大家可以先做一做R语言基础小测验看看自己是否需要跟我们5.5h入门R语言的课程。
先上教程视频B站同步播出
https://www.bilibili.com/video/BV1miNVeWEkw
完整视频回放和答疑服务可见5.5h入门R语言
本节课程视频点击此处查看
R语言入门课是我们认为生信小白入门不得不听的一个课程我们也为这个课程准备了许多干货。R语言的精髓便是数据处理在本节课中我们详细介绍了向量、矩阵、数据框、数组、因子、列表的创建方法与数据访问方式为以后的生物信息学数据处理打下牢固的基础
本次课程代码
大家可以跟着视频练习如下代码
#### 创建数据集 ####
###### 一、向量(vector) ######
# 1 定义
# 是用于存储数值型、字符型或逻辑型数据的一维数组。 例如
a - c(1,2,3,4,5,6,-2,4)
b - c(one,two,three,four)
c1 - c(TRUE,TRUE,TRUE,FALSE,FALSE)# 布尔值
c2 - c(T,T,T,F,F)# 布尔值
# a为数值型向量b字符型必须加c逻辑型向量。
# 单个向量中的数据类型必须相同
c - c(1,asjhg)
cclass(c)
as.numeric(c)
# ***标量scalar)是只含一个元素的向量
g -1# 2 访问向量中的元素
# **注R中位置索引从1开始而不是0**
# 1) 访问单个元素
a - c(k,q,e,f,a,w,p,m)
a[3]# 2访问多个元素
a - c(k,q,e,f,a,w,p,m)
a[ c(1,2,4,6) ]
# 3连续访问多个元素
a - c(k,q,e,f,a,w,p,m)
a[ c(2:6) ]
length(a)###### 二、矩阵(matrix) ######
# 1 定义
# 是一个**二维变量**只是每个元素都拥有相同的模式数值型、字符型或逻辑型。
#可以通过函数matrix()创建矩阵格式如下
# mymatrix - matrix(vector,nrow number_of_rows,
# ncol number_of_columns,
# byrow logical_value,dimnames list(char_vector_rownames,
# char_vector_colnames))#vector:矩阵的元素
#nrow:行的维数
#ncol:列的维数#dimnames:可选的、以字符型向量表示的行名和列名如果没有设定可以不写
#byrow TRUE矩阵按行填充byrow FALSE:矩阵按列填充。\*\*如果不做设定默认情况下按列填充。
# **因此创建矩阵时至少包括vector,nrow,ncol**# 2 创建矩阵
y - matrix(1:20,nrow 5,ncol 4)
ycells - c(1,2,3,4)
rnames - c(R1,R2)
cnames - c(C1,C2)mymatrix1 - matrix(cells,nrow 2,ncol 2,byrow FALSE,dimnames list(rnames,cnames))
mymatrix1#可以看到优先按列填充且行名为rnames列名为cnames。
# 下面改变一些参数:
cells - c(1,2,3,4)
rnames - c(R1,R2)
cnames - c(C1,C2)mymatrix2 - matrix(cells,nrow 2,ncol 2,byrow TRUE,dimnames list(cnames,rnames))
mymatrix2# 可以看的变成了优先按行填充行名变为cnames列名变为rnames。
# 如何访问矩阵中的元素
# 使用下标和方括号来选择矩阵中的行、列或元素。
# x[i,] 矩阵x中的第i行
# x[,j]:矩阵x中的第j列**
# x[i,j]:矩阵x中第i行第j列个元素
# x[i,c(h,j)]:矩阵x中第i行,第h和j列
# x[c(h:i),j]矩阵x中第h-i行,第j列# 举例
x - matrix(21:40,nrow 4,ncol 5 )
x
x[1,]
x[,5]
x[c(1,2,3),5]
x[c(2:4),c(2:4)]
dim(x)
nrow(x)
ncol(x)# 矩阵也只能包含一种数据类型当维度超过2时可以使用数组 ###### 三、 数组(array) ####### 1 定义# 数组(array)与矩阵类似但是维度可以大于2,例如可以是三维的。# 通过函数**array()**创建# myarray - array(vector,dimensions,dimnames)# vector:数组中的数据# dimensions:数值型向量,给出了各个维度下标的最大值# 按行列面进行排序 # dimnames:可选的、各维度名称标签的列表# 2 创建数组dim1 - c(A1,A2)dim2 - c(B1,B2,B3)dim3 - c(C1,C2,C3,C4)z - array(1:24,c(2,3,4),dimnames list(dim1,dim2,dim3))z# 可以看到这里c(2,3,4)表示的3个维度分别为234个即2行3列4面。# 3 访问数组中的元素#和矩阵类似使用下标和方括号来选择。z[1,3,4]#这表示选择是维度1中的1(第一行)维度2中的3(第三列)维度3中的4(第4个矩阵) ***可以某种程度上将数组看出几个矩阵的组合。***dim(z)
###### 四、 数据框(data) ####### 1 定义# 数据框的不同列可以包含不同模式数值型、字符型、逻辑型数据更类似于常见的数据集。# 通过函数**data.frame()**创建mydata - data.frame(col1,col2,col3,...)#col1,col2,col3,...:列向量可以为任何类型的数据每一列的名称由函数names指定。 **但通常不同列变量的向量中的数据观测值个数相同且每一列数据的模式必须相同**
# 2 创建数据框patientID - c(1,2,3,4)age - c(25,34,28,52)diabetes - c(Type1,Type2,Type1,Type1)status - c(Poor,Improved,Excellent,Poor)patientdata - data.frame(patientID,age,diabetes,status)patientdata# 3 选取数据框中的元素#1用方括号和下标来选取[n]和[n1:n2]格式下标的数字表示第n1到n2变量列patientdata[2]patientdata[,1:2]# 而[n1,n2]则选取的依然是第n1行n2列对应的元素patientdata[3,4]# 2直接利用函数制定特定变量名来获取patientdata[c(age,status)]patientdata[,c(age,status)]#* 注意变量名是字符型数据所以要加双引号# 3利用$符号变量名不用双引号patientdata$status# **with()**函数#在每个变量名前都输入一次patientdata$比较繁琐可以借助with()函数简化代码#以内置数据框mtcars为例mtcarssummary(mtcars$mpg)# summary()获取描述性统计量可以提供最小值、最大值、四分位数和数值型变量的均值以及因子向量和逻辑型向量的频数统计等。结果输出中的1Q和Q3分别为残差第一四分位数1Q和第三分位数Q3。***plot(mtcars$mpg,mtcars$disp)with(mtcars, { plot(mpg,disp) plot(mpg,gear) plot(mpg,carb) } )dim(mtcars) ###### 五、因子(factor) ####### 1 定义#谈因子前首先要了解变量的分类可以分为# -----------------------------------------------------------------------------------------------------------------------------------------------------# | 变量分类 | 定义 | 包括 | 具体举例 |# :# | 名义变量分类变量 | 没有顺序之分的分类变量 | 性别省份职业、分型等 | Diabetes(Type1、Type2) |# | | | | |# | nominal variable | | | |# -----------------------------------------------------------------------------------------------------------------------------------------------------# | 顺序变量 | 一种顺序关系而非数量关系 | 班级名次病情等 | Status(poor、improved、excellent) |# | | | | |# | ordinal variable | | | |# -----------------------------------------------------------------------------------------------------------------------------------------------------# | 连续变量 | 可呈现为某个范围内的任意值并同时表示了顺序和数量 | 连续的数值可以进行求和平均值等运算 | age(15、21、33) |# | | | | |# | continuous variable | | | |# -----------------------------------------------------------------------------------------------------------------------------------------------------# **其中名义变量和顺序变量称为因子**
# 2 名义变量作为因子时#函数factor()以一个整数向量的形式存储类别值#整数的取值范围是[1...k](其中k是名义变量中唯一值的个数)。同时一个由字符串原始值组成的内部向量将映射到这些整数上。diabetes - c(Type1,Type2,Type1,Type1)diabetesdiabetes1 - factor(diabetes)diabetes1str(diabetes)str(diabetes1)#可以看到用factor()将向量存储为(1,2,1,1),并在内部将其关联为1Type1,2Type2.# 3 顺序变量作为因子时#表示顺序变量时要指定orderedTRUEstatus- c(poor,improved,excellent,poor)status1 - factor(status,ordered TRUE)str(status)str(status1)# 对于字符型向量因子的水平(level)默认依字母顺序创建但很少情况是理想的# 可以用levels选项覆盖默认排序重新排序**status- c(poor,improved,excellent,poor)status2 - factor(status,ordered TRUE, levels c(poor,improved,excellent))str(status1)str(status2)# 这样排序从原来的3213变成了1231。# 数值型变量可以用参数levels和labels来编码因子 例如男性被编码为1女性被编码为2sex - c(1,2,2,1)sex- factor(sex,levels c(1,2),labels c(Male,Female))sex# **归根结底因子和非因子到底什么区别我们用一张图就可以直观感受** plot函数的数据集是向量的作图输出散点图mtcars$cylplot(mtcars$cyl)# plot函数的数据集是因子的作图输出条形图mtcars$cylmtcars1 - factor(mtcars$cyl)plot(mtcars1)mtcars2 - factor(mtcars$cyl,levels c(8,6,4))plot(mtcars2)
###### 六、列表(list) ####### 1 定义#一些对象或成分的有序集合。一个列表中可能包含若干对象可能无关的如向量矩阵数据框甚至其他列表。#用函数**list()**创建也可以对列表中的对象命名#mylist - list(object1,object2,...)#mylist - list(name1object1,name2object2,...)
# 2 创建一个列表g - My Frist listh - c(25,23,11,13)j - matrix(1:10,nrow 5)k - c(one,two,three)mylist - list(titleg,agesh, j,k)mylist#这个列表中包含了字符型、数值型向量矩阵。
# 3 选取列表中的元素#一般用[[]],双重方括号加数字或名称来访问mylist[[2]]mylist[[title]]mylist[title] R语言入门课
1、课程简介
生信基地希望能够给大家提供系统性、形成性、规范性的生信教学。前面几次活动中同学们表示希望能够有线下集中学习以及针对性的指导、答疑。所以此次我们已推出生信R语言入门课分为R介绍、R语言数据对象、基本数据管理、图形初级(ggplot2)四个模块共12节课。当然我们也不做生信快餐本次活动回放已剪辑完毕方便错过活动的小伙伴加入。 2、R语言介绍
R语言是一种专门为统计分析、数据可视化和计算而设计的编程语言广泛应用于各个领域。R语言支持各种统计分析方法如线性回归、方差分析、聚类分析等同时也能够进行复杂的图形和数据可视化。R语言凭借其开源、免费、工具包丰富、数据处理能力强、可视化丰富的特性在生物信息学中被广泛应用。例如RNA-Seq差异分析常用的DESeq2、edgeR的引用次数多达数万次。我们制作的单细胞教程几乎也全是基于R语言环境。很多同学找我们学习单细胞的时候都表示不想学习R语言直接学习单细胞分析不积跬步无以至千里这显然是不现实的所以欢迎大家来参加此次的课程。 资料课表 目前12节总计5.5h的视频课程回放已剪辑完毕方便错过直播的同学随时加入学习 除了学习视频外还给大家准备了学习资料包括学习手册、课后习题。大家人手一份资料可以跟着视频联系 课程目录
1 、R介绍
1.1 R 下载与安装
1.1.1 RStudio
1.1.2 R的帮助函数
1.1.3 用于管理R工作区的函数
1.2 包Packages)
1.2.1 包的基本函数
1.2.2 包处理大型数据集的示例展示 2、 R语言数据对象
2.1 理解数据集
2.2 数据结构
2.2.1 向量(vector)
2.2.2 矩阵(matrix)
2.2.3 数组(array)
2.2.4 数据框(data)
2.2.5 因子(factor)
2.2.6 列表(list)
2.3 数据输入
2.3.1 从带分隔符的文本文件导入数据
2.3.2 导入Excel数据 3、基本数据管理
3.1 创建新变量
3.2 变量的重编码(recoding)
3.3 变量的重命名
3.4.缺失值NA
3.5 类型判断和转换
3.6 数据排序
3.7 数据集的合并
3.8 选取变量
3.9 选取观测值
3.10 subset()函数选择观测值或变量
3.11 剔除变量
3.12 dplyr包
3.13 使用管道操作符对语句进行串接 4、图形初级(ggplot2)
4.1 使用ggplot2包创建图形
4.1.1 函数ggplot2()
4.1.2 geom()函数
4.1.3 分组
4.1.4 标尺
4.1.5 刻面
4.1.6 标签
4.1.7主题
4.2 ggplot2包的详细信息
4.2.1 放置数据和映射选项
4.2.2 将图形作为对象使用
4.2.3 保存图