笔记整理
https://www.jianshu.com/p/aeb2f74b4080
R包安装 http://www.bio-info-trainee.com/3727.html
看了生信技能树曾老师的R包安装视频教程,可到官网或者通过微云传输下载R包,根据电脑配置(有Window系统和Mac系统)选择匹配的R包,在安装过程中,选默认安装途径就可以。
R包安装指导https://www.jianshu.com/p/f3ac3ec511da
已看过生信技能树团队出品的R包安装指导视频教程。
简单了解二代测序https://share.weiyun.com/5dLV9A7 密码:wsstn9
已看过链接中的视频,了解二代测序的原理和方法。
R markdown使用
在作业中有
数据存读:https://www.jianshu.com/p/6ba9da4e2f5b
https://www.jianshu.com/p/6ba9da4e2f5b
a<-read.csv('/Users/chenjiangshu/cjs-beginner/GSE17215_series_matrix.txt')
b<-read.csv('/Users/chenjiangshu/cjs-beginner/GSE17215_series_matrix.txt',)
d<-read.csv('/Users/chenjiangshu/cjs-beginner/GSE17215_series_matrix.txt',comment.char = '!',sep='\t')
f<-read.table('/Users/chenjiangshu/cjs-beginner/GSE17215_series_matrix.txt',sep = '\t',)
####dim(询问数据类型的维度)
dim(d)
dim(f)
head(d)
head(f)
tail(d)
tail(f)
write.table(x = f,file = '0418.txt')
> a<-read.csv('/Users/chenjiangshu/cjs-beginner/GSE17215_series_matrix.txt')
> b<-read.csv('/Users/chenjiangshu/cjs-beginner/GSE17215_series_matrix.txt',)
> d<-read.csv('/Users/chenjiangshu/cjs-beginner/GSE17215_series_matrix.txt',comment.char = '!',sep='\t')
> f<-read.table('/Users/chenjiangshu/cjs-beginner/GSE17215_series_matrix.txt',sep = '\t',fill=T,skip=66,header=T)
> dim(d)
[1] 22277 7
> dim(f)
[1] 22278 7
> head(d)
ID_REF GSM431121 GSM431122 GSM431123 GSM431124 GSM431125 GSM431126
1 1007_s_at 481.59980 596.79062 2721.83475 2566.31563 2737.76320 2629.25380
2 1053_at 306.82972 224.97956 246.73288 251.85537 245.55677 196.34917
3 117_at 30.32576 27.28749 40.12724 40.04009 48.14327 37.57184
4 121_at 125.04107 147.67525 138.18675 160.26449 151.04978 143.56799
5 1255_g_at 19.87286 18.08049 19.11944 19.19024 21.11857 18.96300
6 1294_at 61.81515 57.12277 49.46442 45.69329 49.95233 46.70881
> head(f)
ID_REF GSM431121 GSM431122 GSM431123 GSM431124 GSM431125 GSM431126
1 1007_s_at 481.59980 596.79062 2721.83475 2566.31563 2737.76320 2629.25380
2 1053_at 306.82972 224.97956 246.73288 251.85537 245.55677 196.34917
3 117_at 30.32576 27.28749 40.12724 40.04009 48.14327 37.57184
4 121_at 125.04107 147.67525 138.18675 160.26449 151.04978 143.56799
5 1255_g_at 19.87286 18.08049 19.11944 19.19024 21.11857 18.96300
6 1294_at 61.81515 57.12277 49.46442 45.69329 49.95233 46.70881
> tail(d)
ID_REF GSM431121 GSM431122 GSM431123 GSM431124 GSM431125 GSM431126
22272 AFFX-ThrX-3_at 25.14590 25.55137 25.96761 26.44569 30.54909 24.86885
22273 AFFX-ThrX-5_at 19.88238 19.44767 19.86274 20.04666 22.50811 19.22124
22274 AFFX-ThrX-M_at 18.68637 18.06303 18.94539 19.43978 19.48697 18.94799
22275 AFFX-TrpnX-3_at 19.93025 20.31343 19.57098 19.91236 20.14536 20.05193
22276 AFFX-TrpnX-5_at 18.73988 19.09319 19.23404 18.54682 21.10093 18.34052
22277 AFFX-TrpnX-M_at 18.91361 19.58369 19.00904 18.34500 18.64643 17.76356
> tail(f)
ID_REF GSM431121 GSM431122 GSM431123 GSM431124 GSM431125 GSM431126
22273 AFFX-ThrX-5_at 19.88238 19.44767 19.86274 20.04666 22.50811 19.22124
22274 AFFX-ThrX-M_at 18.68637 18.06303 18.94539 19.43978 19.48697 18.94799
22275 AFFX-TrpnX-3_at 19.93025 20.31343 19.57098 19.91236 20.14536 20.05193
22276 AFFX-TrpnX-5_at 18.73988 19.09319 19.23404 18.54682 21.10093 18.34052
22277 AFFX-TrpnX-M_at 18.91361 19.58369 19.00904 18.34500 18.64643 17.76356
22278 !series_matrix_table_end NA NA NA NA NA NA
> write.table(x = f,file = '0418.txt')
作业
1.read.table参数理解
file:文件名(包在“”内,或者使用一个字符型变量),可能需要全程路径(注意即使是在windows下,符号\也不允许包含在内,必须使用/替换),或者一个URL链接(http://...)(用URL对文件远程访问)。
header:一个逻辑值(FALSE or TRUE)用来反映这个文件的第一行是否包含变量名。
sep:文件中的字段分隔符,例如对用制表符分隔的文件使用sep=“\t”。
quote:指定用于包围字符型数据的字符。
dec:用来表示小数点的字符。
row.names:保存行名的向量,或文件中一个变量的序号或名字,缺省时行号取为1,2,3...
col.names:指定列名的字符向量(缺省值是:V1,V2,V3...)。
as.is:控制是否将字符型变量转化为因子型变量(如果值为FALSE),或者仍将其保留为字符型(TRUE)。as.is可以是逻辑型,数值型或字符型向,用来判断变量是否被保留为字符。
na.strings:代表缺失数据的值(转化NA)。
colClasses:指定各列的数据类型的一个字符型变量。
nrows:可以读取的最大行数(忽略负值)。
skip:在读取数据前跳过的行数。
check.names:如果为TRUE,则检查变量名是否存在R中有效。
fill:如果为TRUE且非所有的行中变量数目相同,则用空白填补。
strip.white:在sep已指定的情况下,如果为TRUE,则删除字符型变量前后多余的空格。
blank.lines.skip:如果为TRUE,忽略空白行。
comment.char:一个字符用来在数据文件中写注释,以这个字符开头的行将被忽略(要禁用这个参数,可使用comment.char="")。
2.运行各参数后,找出你认为读取文件用得比较多的参数
读取文件用得比较多的参数有:
“header”,“sep”,“quote”,“na.strings”,“fill”,“strip.white ”,“blank.lines.skip”,“comment.char ”,“”等等。
3.对上述参数用法进行理解并整理
header:按照惯例,首行只有对应列的字段而没有行标签对应的字段。因此,它会比余下的行少一个字段。(如果需要在 R 里面看到这一行,设置 header = TRUE。)如果要读取的文件里面有行标签的头字段(可能是空的),以下面的方式读取
read.table("file.dat", header = TRUE, row.names = 1)
列名字可以通过 col.names 显式地设定;显式设定的名字会替换首行里面的列名字(如果存在的话)。
sep:通常,打开文件看一下就可以确定文件所使用的字段分隔符,但对于空白分割的文件,可以选择默认的sep = "" (它能使用任何空白符作为分隔符,比如空格,制表符,换行符), sep = " " 或者 sep = "\t"。注意,分隔符的选择会影响输入的被引用的字符串。如果你有含有空字段的制表符分割的文件,一定要使用 sep = "\t"。
quote:默认情况下,字符串可以被 " 或 ' 括起,并且两种情况下,引号内部的字符都作为字符串的一部分。有效的引用字符(可能没有)的设置由参数 quote 控制。对于sep = "\n",默认值改为 quote = ""。如果没有设定分隔字符,在被引号括起的字符串里面,引号需要用 C格式的逃逸方式逃逸,即在引号前面直接加反斜杠 \。如果设定了分隔符,在被引号括起的字符串里面,按照电子表格的习惯,把引号重复两次以达到逃逸的效果。
na.strings :默认情况下,文件是假定用 NA 表示缺损值,但是,这可以通过参数 na.strings 改变。参数 na.strings 是一个可以包括一个或多个缺损值得字符描述方式的向量。 数值列的空字段也被看作是缺损值。在数值列,值 NaN,Inf 和 -Inf 都可以被接受的。
fill:从一个电子表格中导出的文件通常会把拖尾的空字段。
strip.white :如果设定了分隔符,字符字段起始和收尾处的空白会作为字段一部分看待的。为了去掉这些空白,可以使用参数 strip.white = TRUE。
blank.lines.skip:默认情况下,read.table 忽略空白行。这可以通过设置 blank.lines.skip = FALSE 来改变。但这个参数只有在和 fill = TRUE 共同使用时才有效。这时,可能是用空白行表明规则数据中的缺损样本。
comment.char:默认情况下,read.table 用 # 作为注释标识字符。如果碰到该字符(除了在被引用的字符串内),该行中随后的内容将会被忽略。只含有空白和注释的行被当作空白行。
如果确认数据文件中没有注释内容,用 comment.char = "" 会比较安全 (也可能让速度比较快)。
4.read.csv参数理解
file:文件名(包在“”内,或者使用一个字符型变量),可能需要全程路径(注意即使是在windows下,符号\也不允许包含在内,必须使用/替换),或者一个URL链接(http://...)(用URL对文件远程访问)。
header:一个逻辑值(FALSE or TRUE)用来反映这个文件的第一行是否包含变量名。
sep:文件中的字段分隔符,例如对用制表符分隔的文件使用sep=“\t”。
quote:指定用于包围字符型数据的字符。
dec:用来表示小数点的字符。
fill:如果为TRUE且非所有的行中变量数目相同,则用空白填补。
comment.char:一个字符用来在数据文件中写注释,以这个字符开头的行将被忽略(要禁用这个参数,可使用comment.char="")。
5.运行各参数后,找出你认为读取文件用得比较多的参数
read.csv里的参数不多,如运行以下命令时,读取文件用得比较多的参数有,“header”,“ sep ”,“ quote”,“dec”,“fill ”,“comment.char ”。
a<-read.csv('/Users/chenjiangshu/cjs-beginner/GSE17215_series_matrix.txt')
b<-read.csv('/Users/chenjiangshu/cjs-beginner/GSE17215_series_matrix.txt',)
d<-read.csv('/Users/chenjiangshu/cjs-beginner/GSE17215_series_matrix.txt',comment.char = '!',sep='\t')
f<-read.table('/Users/chenjiangshu/cjs-beginner/GSE17215_series_matrix.txt',sep = '\t',)
####dim(询问数据类型的维度)
dim(d)
dim(f)
head(d)
head(f)
tail(d)
tail(f)
write.table(x = f,file = '0418.txt')
6.对上述参数用法进行理解并整理
header:按照惯例,首行只有对应列的字段而没有行标签对应的字段。因此,它会比余下的行少一个字段。(如果需要在 R 里面看到这一行,设置 header = TRUE。)如果要读取的文件里面有行标签的头字段(可能是空的),以下面的方式读取
read.table("file.dat", header = TRUE, row.names = 1)
列名字可以通过 col.names 显式地设定;显式设定的名字会替换首行里面的列名字(如果存在的话)。
sep:通常,打开文件看一下就可以确定文件所使用的字段分隔符,但对于空白分割的文件,可以选择默认的sep = "" (它能使用任何空白符作为分隔符,比如空格,制表符,换行符), sep = " " 或者 sep = "\t"。注意,分隔符的选择会影响输入的被引用的字符串。如果你有含有空字段的制表符分割的文件,一定要使用 sep = "\t"。
quote:默认情况下,字符串可以被 " 或 ' 括起,并且两种情况下,引号内部的字符都作为字符串的一部分。有效的引用字符(可能没有)的设置由参数 quote 控制。对于sep = "\n",默认值改为 quote = ""。如果没有设定分隔字符,在被引号括起的字符串里面,引号需要用 C格式的逃逸方式逃逸,即在引号前面直接加反斜杠 \。如果设定了分隔符,在被引号括起的字符串里面,按照电子表格的习惯,把引号重复两次以达到逃逸的效果。
fill:从一个电子表格中导出的文件通常会把拖尾的空字段。
strip.white :如果设定了分隔符,字符字段起始和收尾处的空白会作为字段一部分看待的。为了去掉这些空白,可以使用参数 strip.white = TRUE。
comment.char:默认情况下,read.table 用 # 作为注释标识字符。如果碰到该字符(除了在被引用的字符串内),该行中随后的内容将会被忽略。只含有空白和注释的行被当作空白行。
如果确认数据文件中没有注释内容,用 comment.char = "" 会比较安全 (也可能让速度比较快)。
7.Rmarkdown 的各部件功能理解(文字描述)
在RStudio中从文件夹“file”的子目录“New file”里打开R markdown:
markerdown的打开方式.png
了解markdown一些选项和图标的功能:
如图中的解释:
选项及图标功能.png
8.安装R包 pheatmap,并截图安装结果
pheatmap安装结果.png9.pheatmap的功能了解(文字描述)
R语言中的pheatmap包是制作热图的一个工具,在基因表达中,根据得来的实验数据,在使用pheatmap制作的基因表达或其它测试结果的热图中,如可以用不同颜色展示基因的表达量的差异。
10.pheatmap对读到的数据进行画图(图片展示)
注:引用网上的数据(https://blog.csdn.net/sinat_38163598/article/details/72770404)练习,刚接触,需要花一些时间去了解
library(pheatmap)
#创建数据集test测试矩阵
test = matrix(rnorm(200), 20, 10)
test[1:10, seq(1, 10, 2)] = test[1:10, seq(1, 10, 2)] + 3
test[11:20, seq(2, 10, 2)] = test[11:20, seq(2, 10, 2)] + 2
test[15:20, seq(2, 10, 2)] = test[15:20, seq(2, 10, 2)] + 4
colnames(test) = paste("Test", 1:10, sep = "")
rownames(test) = paste("Gene", 1:20, sep = "")
# 用pheatmap函数画热图
pheatmap(test)
pheatmap 制作热图 20190427 .png
在热图格子里展示文本
pheatmap(test, display_numbers = TRUE)
pheatmap(test, display_numbers = TRUE, number_format = "\%.1e")
pheatmap(test, display_numbers = matrix(ifelse(test > 5, "*", ""), nrow(test)))
在热图格子里添加文本.png
pheatmap还可以显示行或列的分组信息,支持多种分组;
annotation_col = data.frame(CellType = factor(rep(c("CT1", "CT2"), 5)), Time = 1:5)
rownames(annotation_col) = paste("Test", 1:10, sep = "")
annotation_row = data.frame(GeneClass = factor(rep(c("Path1", "Path2", "Path3"), c(10, 4, 6))))
rownames(annotation_row) = paste("Gene", 1:20, sep = "")
pheatmap(test, annotation_col = annotation_col, annotation_row = annotation_row)
在热图里进行行和列分组.png
网友评论