摘 要:生物信息学是自然科学领域中前沿的、重要的交叉学科之一,各高校十分重视生物信息专业的教学。R语言作为常用数据处理软件,有开源免费、操作简单、功能全面、易扩展等优点,也越来越受到领域内学者的关注和认可。本人结合实际教学经验,对R语言课程的教学现状进行分析,分析R语言软件在生物信息专业教学中的优势,探索适合于生物信息学专业特点的R语言课程的教学方法。
关键词:生物信息学;R语言;生物医学大数据
中图分类号:G642 文献标识码:A 文章编号:2096-4706(2018)11-0108-03
Exploration and Research of R Language Teaching for Bioinformatics
YAN Wenying
(School of Biology Basic Medical Sciences,Soochow University,Suzhou 215123,China)
Abstract:Bioinformatics is one of the frontier and important interdisciplinary disciplines in the field of natural science. Many universities attach great importance to the teaching of bioinformatics. R language is one of the commonly used data processing software with the advantages of open source,simple operation,comprehensive function and easy expansion,so it is more and more concerned and approved by the scholars in the field. Combining with actual teaching experience,This paper analyzed the present situation of the teaching of R language course,explained the advantages of R language software in the teaching of bioinformatics,and explored the teaching method of R language course which is suitable for the bioinformatics.
Keywords:bioinformatics;R language;biomedical big data
0 引 言
生物信息学(bioinformatics)是一门由生命科学、计算机科学、数学、物理学和化学等学科交叉而形成的前沿学科,研究内容涵盖了大规模的基因组、转录组、蛋白质组、代谢组等多个组学层次的各自及整合性的研究,应用领域也覆盖了生物、医学、药学、农学、环境检测等多个领域。生物信息学已经成为生命科学中重要的领域之一,同时也是生物化学、细胞生物学、基础医学等相关学科发展的强大推动力。生物信息学具有很强的专业性和实践性。
近年来,随着深度测序数据的大量涌现,如何阐明和理解生物大数据所包含的生物学意义,是生物信息学面临的挑战,也是生物信息学专业培养人才所必须具备的能力。R语言是生物信息学领域处理生物医学大数据的关键技术之一,在分析和处理数据方面功能尤为强大,对于生物信息学专业的学生有着重要的应用价值。R语言课程是在生物信息学专业的本科或研究生阶段开设,对该课程的掌握有助于学生的毕业设计和科研工作的开展及工作所用知识的积累。但是,目前生物信息学专业中R语言课程的教材和教学方法存在一些不足之处。R语言课程的教学应根据生物信息学专业的特点以及R语言自身的特点,采用相适应的教学方法和实用的教学内容。本文通过R语言课程的教学实践和总结思考,对生物信息学专业R语言课程的现状和存在的问题进行了仔细分析,提出具有针对性的解决方案,为R语言课程教学的探索提供一定的帮助,如图1所示。
1 基于R语言的生物信息专业教学优势
R语言统计领域是S语言的一个分支,是S语言的实现。早期是由新西兰奥克兰大学的Ross Ihaka和Robert Gentleman共同创立的[1],现在则由“R开发核心团队”负责开发和维护。它具有一套完整的数据处理、计算和绘图的功能,含有丰富的各类函数、完善的帮助系统,逻辑简单清晰。R语言有以下几个优势:
(1)开源免费。R语言是完全免费的软件,可以从R官网CRAN(http://cran.r- project.org)上直接下载最新版本的R语言安装到本地计算机上。截至2018年9月,其官网上提供了13031个R语言包,包括下载安装程序、相应的源代码和文档材料等。这一特性使得在教学过程中,教学资源的获取变得简单方便。
(2)易扩展性。R语言很重要的一个特点就是易扩展性。由于其语法开放及通俗易懂,大部分学生容易学习并掌握,最重要的是学生可以通过编制自己的函数来扩展现有语言的功能,增加学生对语言学习的成就感。
(3)跨平台性。跨平台性主要是指R语言有很好的兼容性,可以在目前主流的操作系统如Linux、Windows、MacOS上稳定运行,这是很多类似软件所做不到的。这一特性也符合现在学生所使用的基于不同操作系统的计算机。
(4)资源丰富。R语言社区强大而活跃,碰到问题很容易在互联网上找到解决办法。特别是在生物信息学领域,还有基于R语言的Bioconductor项目[2]提供了海量的专门针对组学数据的注释、分析、实例等资源。这为R语言教学和学习提供了强大的资源来源,也为培养学生解决实际问题创造了可能性并提供了有效途径。
(5)强互动性。R语言的软件的输入和输出都是在同一个窗口进行的。图形输出是在新的窗口处,输出的图形可以直接保存为多种图片格式。此外Rstudio软件是编辑、运行R语言的最为理想的工具之一,具有更强的互动性,整合了脚本等写作窗口、命令交互式窗口、变量或历史记录框、系统目录框、帮助框、图形输出框等窗口。较强的互动性大大降低了广大研究者和在校师生处理数据和绘图的成本,并有效提高了工作和学习效率。
2 R语言课程教学思考与探索
2.1 结合专业特点
R语言的教材良莠不齐,特别是针对生物信息学专业的教材就更是凤毛麟角。教材中与该专业应用相关度不大、且非课程核心的内容应当适当减少,例如简化数学证明和统计理论等内容过重而实际应用较少的内容。这样课程内容过多且理论知识过难的问题在很大程度上能够得到改善。应适当增加课程所需的基础内容,特别是具有应用价值以及实际案例内容的学时数。例如,logistic回归和线性回归算法的R语言实现的内容对于该专业非常重要。授课时利用案例来深入浅出地讲解该方法及其R语言实现,以及相关函数中参数的设置。对于重要的方法,以多个案例来反复加深理解,并让学生实际操作,提高他们的动手能力。
2.2 开展PBL教学
PBL(Project-Based Learning/Problem-Based Learning)即指“基于项目(或基于问题)”的教学模式,以学生为中心、以项目为基础的过程[3],其有助于培养学生的自主性和合作意识。在项目设计过程中,以R语言为实现手段,提炼和简化平时科研工作中的问题,结合学生的背景知识,设计合理的项目。在具体实施过程中统筹安排,将他们分成各个高效配合的小团队,激发学生的学习动力和热情。学生在项目任务的牵引下,分工合作,学习时间自然延伸到了课堂之外。在整个过程中学生的态度、参与程度、任务完成的质量、学习的效果等等都可作为评估依据。
2.3 开展情境教学
情境教学是指在讲课过程中加入具体的有趣的情境,以活跃课堂的学习氛围,提高学生对于R语言编程的兴趣,帮助学生更好地掌握学习的知识并且灵活运用[4]。最终通过有趣的教学情境提高学生的学习质量。
3 R语言生物信息实例
基于高通量数据寻找癌症样本、组织样本和癌旁正常组织样本中显著差异表达的基因是常见的生物问题。这里选取6个胃癌癌症样本和6个胃癌癌旁非肿瘤样本的基因表达谱数据(以2为底的对数的格式)为例,基于R语言中的limma包[5],采用经验贝叶斯的方法来寻找显著差异表达的基因。
代码如下:
>library(limma)#加载limma包
#读入基因表达谱数据,并转换成数字矩阵,以基因名为行名,以样本名为列名。其中前6列为癌症样本,后6列为癌旁样本
>Ex <- read.csv(\"mRNAEx.csv\")
>M <- data.matrix(Ex[,-1])
>rownames(M) <- Ex$GeneSymbol
#构建分组矩阵
>gsms <- \"111111000000\"
>sml <- c()
>for (i in 1:nchar(gsms)) { sml[i] <- substr (gsms,i,i) }
>sml <- paste(\"G\", sml, sep=\"\") # set group names
>fl <- as.factor(sml)#癌症样本为G1组,癌旁非肿瘤样本为G0
>design <- model.matrix(~0+fl)
>colnames(design) <- levels(fl)
#构建模型
>fit <- lmFit(M, design)
>cont.matrix <- makeContrasts(G1-G0, levels=design)
>fit2 <- contrasts.fit(fit, cont.matrix)
>fit2 <- eBayes(fit2)
>tT <- topTable(fit2, adjust=\"fdr\", p.value= 0.01,number = nrow(Ex))
>head(tT)
ID logFC AveExpr t P.Value adj.P.Val B
9176 PGA5 -9.356 13.808 -43.84 1.031e-15 1.658e-11 23.35
5867 PGA4 -10.108 13.516 -34.77 2.159e-14 1.188e-10 21.57
9802 PGA3 -10.327 13.299 -34.70 2.216e-14 1.188e-10 21.55
6647 CLDN7 4.489 10.542 28.09 3.496e-13 1.405e-09 19.62
3456 GIF -12.891 9.776 -26.79 6.475e-13 2.082e-09 19.15
8722 CXorf61 8.588 7.574 25.78 1.070e-12 2.364e-09 18.76
#输出差异基因的列表到txt文件
>write.table(tT, file=\"DE.txt\", row.names=F, sep=\"\t\")
4 结 论
在大数据时代,是否拥有数据分析能力直接影响着一个生物信息学者能否真正融入数据化的时代。在高等学校的生物信息专业的本科或研究生阶段的教学中将R语言的运用作为一项技能训练,使学生不仅仅停留在对基础理论知识的掌握上,更重要的是培养学生深入了解和掌握数据处理、运用程序对实际问题进行具体分析的能力。该教学方法自实施以来,提高了学生学习的效率和积极性。笔者以后将不断地总结经验、摸索新方法,创新思维以促进该课程教学水平的提高,从而培养综合型和应用型人才。
参考文献:
[1] Robert I. Kabacoff. R in Action:Data Analysis and Graphics with R [M]. Manning Publications. 2nd edition,2015.
[2] Robert C Gentleman,Vincent J Carey,Douglas M Bates,et al. Bioconductor:open software development for computational biology and bioinformatics [J]. Genome Biology,2004(5):80.
[3] 陈培清,韩秋琴,辛晓明.PBL教学模式的发展及应用现状[J].教育教学论坛,2018(35):214-215.
[4] 方玉峰.情境教学在软件开发教学中的应用方法研究[J].现代信息科技,2017,1(5):127-128.
[5] IRIZARRY RA. Bioinformatics and Computational Biology Solutions Using R and Bioconductor [M]. New York,NY:Springer New York,2005.
作者简介:严文颖(1985.12-),女,汉族,江苏泰兴人,讲师。研究方向:生物信息学和系统生物学。