[摘要]"在人工智能与大数据分析技术迅速发展的背景下,R语言逐渐受到科研工作者,特别是青年学者和研究生的青睐。本文基于R语言的特点,探索医学院校R语言课程的教学内容及教学模式的重构改革,结合医学专业的特点,设计实用性强且易学易懂的应用案例,通过对案例的开发,激发医学生学习R语言的兴趣,培养医学生利用计算机技术进行大数据分析的能力。
[关键词]"大数据分析;R语言;生物信息学
[中图分类号]"R857.3""""""[文献标识码]"A""""""[DOI]"10.3969/j.issn.1673-9701.2024.31.020
1""引言
20世纪80年代,分子生物学的快速发展和DNA测序技术的进步,导致DNA序列、蛋白质序列、基因表达数据等生物分子数据呈现出爆炸性的增长。传统的生物学研究方法难以有效管理和分析这些数据,因此亟需新的分析方法。人类基因组计划于1990年启动,至2001年人类基因组工作草图发表,期间产生大量的基因组数据,标志着生物信息学进入一个新的发展阶段。信息技术的进步和跨学科的合作进一步推动生物信息学的迅速发展,使其在医疗健康领域发挥重要作用。
王丹等[1]通过对生物信息学人才需求的调查研究发现,生物信息学人才需具备利用计算机技术解决实际应用问题的能力。王莉等[2]以生物信息学前沿课程为例,探讨新理念下的教学改革,实现医工的有机结合。李曼菲等[3]针对生物信息学课程的教学改革提出培养学生具有创新能力为目标的方案。王莉等[4]以培养学生的创新思维为目标,研究生物信息学前沿课程的教学改革。胡艳玲等[5]通过分析当前生物信息学教学中的不足,提出将科研实践融入课程教学的新方法。王燕忠等[6]讨论医学检验专业学习生物信息学课程的必要性,阐述生物信息学在培养综合性医学检验人才方面的重要性。阮陟等[7]探讨医学信息学教学对培养医学研究生计算思维及科研思维能力的重要性。诸多学者对生物信息学课程的教学与实践进行深入研究和探讨[8-12]。
综合上述研究发现R语言是生物信息学课程学习的一项重要工具。R语言是一种开源编程语言,专为统计计算和图形生成而设计,由新西兰奥克兰大学的Robert"Gentleman和Ross"Ihaka等人开发。R语言具有强大的数据处理能力,能够高效分析生物信息学中的大型数据集,包括数据清洗、数据归一化及格式转换等。R语言内置的统计分析功能,如相关性分析、聚类分析和逻辑回归分析,能构建多种复杂模型。此外,R语言丰富的图表生成功能非常适合展示生物学中复杂的数据关系。在生物信息学领域,基因组学、转录组学和代谢组学等数据分析可通过R语言的扩展包实现。如可利用R语言的Biostrings包处理生物序列数据,差异表达基因分析则可通过R语言中的DESeq2或edgeR包实现,而对全基因组序列数据的访问和处理则可通过BSgenome包完成。此外,R语言还可用于生物路径分析,并实现多种机器学习算法,以构建预测模型用于疾病预测或生物标志物的发现。
R语言对数据处理、图形生成和统计分析的强大功能为生物学研究提供有力支持。国内外多所高校和研究机构已为本科生开设R语言课程。但目前各医学院校的生物信息学专业开设时间较短,具备交叉学科背景的师资队伍相对匮乏,缺乏丰富的R语言课程教学经验,而R语言课程的内容往往枯燥难懂,学生难以理解。因此,探索R语言课程的教学内容与教学模式,对医学院校有效开设该课程并取得良好教学效果至关重要。
2""R语言的优势
2.1""数据分析的意义
数据分析是从数据中提取有价值信息的过程,通常包括数据清洗、数据转换和建模等步骤。通过运用数学算法、统计方法及多种工具来实现这一过程。大数据分析则是指对大规模数据进行分析。大数据的来源、数据类型及其特征见图1。
2.2""数据分析工具的对比
数据分析工具主要包括R、Python、Stata、MATLAB、EViews、SAS和SPSS等。每种数据分析工具的特点描述见图2。
2.3""R语言的特点
R语言具有强大的统计数据分析能力和绘图功能,其源代码是开放的。与其他统计分析工具相比,R语言具有诸多优点,因此更适用于生物大数据的分析与挖掘,见图3。
生物信息学专业注重学科交叉与融合,因此医
学院校生物信息学专业的学生学习R语言课程,旨在启发他们综合运用数学、物理和计算机知识的能力,拓宽知识面,了解学科前沿及最新进展,培养解决该领域实际问题的能力,为今后进行生命科学研究奠定基础。因此,在医学院校生物信息学专业开设R语言课程十分必要。
3""R语言课程设计
3.1""教学内容重构设计
R语言的主要功能包括统计分析和可视化,因此R语言课程的教学内容主要分为R语言的基础知识、可视化和统计分析,见图4。
由于医学院校的学生大多计算机编程基础较薄弱,因此R语言课程的内容安排尽可能简洁、通俗易懂。该课程大致分为三个部分:第一部分主要介绍R语言的基础知识。R是一种解释型编程语言,输入的命令能够直接执行,与C语言等其他编程语言不同,无需编译和链接等操作。在R语言中,所有操作都是针对存储在活动内存中的对象进行的。因此,本部分引入数据对象和数据类型的相关介绍。数据、结果及图形的输入和输出通过文件的读写实现。R语言通过使用工作目录来处理文件的读取和写入,即数据的存储和读取。这一部分的最后将从编程的角度阐述R语言中的基本技术。第二部分内容主要描述R语言的可视化绘图功能。R语言中主要有两种绘图函数:一种是高级绘图函数,用于创建新的图形;另一种是低级绘图函数,用于在现有图形上添加元素。本部分将重点介绍R语言中常见图形的绘制方法。第三部分主要是R语言的数据分析功能。将通过具体实例介绍R语言的多种数据分析功能,包括相关分析、经典回归分析、时间序列分析、主成分分析与因子分析、判别分析与聚类分析、典型相关分析与对应分析。每种数据分析方法都将通过应用案例的方式进行引入和阐述,以便更好地理解其实际应用。
3.2""教学模式设计
为帮助学生更好地理解和掌握R语言,教学方式采用理论与实践相结合、线上与线下相结合、课内教学与课后实践相结合以及项目化实现的综合方法。这4种教学方式在教学过程中交替运用,通过与专业相关的案例驱动,旨在实现开发案例目标。结合多种教学方式,可加深学生对R语言课程理论内容的理解,并熟练掌握R语言的编程操作。具体的教学方式见图5。
3.3""应用案例
结合医学专业,以应用案例驱动的方式引入直方图的制作方法,通过以下简单易懂的案例讲解如何使用R语言制作直方图。
案例:使用R语言制作上海市各区手足口病患病人数的直方图。相关数据以.xlsx格式的文件分发给学生。核心程序代码如下:
gt;library(RODBC)
gt;zlt;-odbcConnectExcel2007(\"C:/data/disease.xlsx\")
gt;sqlt;-sqlFetch(z,\"Sheet1\")
gt;close(z)
gt;hist(sq$DLXF)
请为上述直方图添加标题,并修改坐标轴的刻度和名称。可使用以下语句对直方图进行相应修改。
gt;hist(sq$\"手足口病人数/万人\",
main=\"手足口病人数分布\",xlim=c(0,10),"ylim=c(0,10),
xlab=\"手足口病人数\",ylab=\"人数\")
在上述程序运行过程中,学生可能遇到各种程序运行错误,如在执行sqlFetch(z,\"Sheet1\")时出现错误提示:“第一个参数不是一个打开的RODBC通道”。通过对程序运行中出现的错误进行分析,引入R语言的理论知识讲解。在显示正确结果后,返回程序源代码,通过逐行讲解每一句代码,逐步引入R语言的基础理论知识。如R函数的安装、调用及数据文件的读取和关闭等。案例驱动的教学方式简单易懂,初学者易接受。这不仅能激发非计算机专业的医学生对R语言课程的兴趣,还能通过实际操作加深他们对R语言理论知识的理解。
基于R语言制作直方图的程序代码,完成课后作业:制作散点图。提示:散点图的函数为plot()。素材文件以.xlsx格式分发。结果要求显示见图6。
对R语言的其他图表制作采用案例驱动方式。如制作人口普查情况曲线标绘图和箱线图见图7、图8。在学习每一类图表制作的过程中,结合多种教学方法完成案例的开发。通过对每个应用案例的程序编写过程,融入R语言的基础理论知识讲解。在程序运行过程中,可出现各种类型的代码错误,通过对这些错误的修改,能加深对R语言基础知识的理解。程序编写的过程也是锻炼学生计算思维能力的过程。最终,通过综合案例的开发,提升学生利用计算机技术解决实际问题的逻辑思维能力和创新应用能力。
4""结语
在大数据背景下,生命科学领域的数据量迅速增加,促进生物信息学的产生与发展。对生物信息的处理、存储及分析是生物医药数据科学领域学生必须掌握的基本能力。首先,R语言作为一种新兴的统计编程语言,其众多优点使其成为医学院生物信息学专业学生进行数据分析的理想工具。然而,由于生物信息学是一门交叉学科,授课教师需具备生命科学、数学和计算机等多方面的背景,这类人才目前十分紧缺,导致R语言课程建设进展缓慢。其次,传统的教学手段多以理论教学为主,实际操作时间不足,课程内容往往显得抽象和枯燥,学生难以理解,兴趣较低,导致课程内容的掌握变得困难。第三,教学内容缺乏新颖性,教学案例未能与医学相关专业相结合,无法有效解决学生在本专业中遇到的实际问题。因此在医学院校开设R语言课程不仅需要提升教师的专业水平,还需从教学内容和教学方式等方面对R语言课程进行改革和建设。本文基于对R语言课程的分析,探索教学内容及教学方式改革,重构R语言课程的教学内容和教学模式。期望通过对R语言课程的学习,医学院的学生能熟练掌握R语言,利用其进行生物医学大数据的分析,并有效解决本专业相关的实际问题。
利益冲突:所有作者均声明不存在利益冲突。
[参考文献]
[1] 王丹,"王晨宇,"沙岩."生物信息学人才培养的需求调查研究[J]."继续医学教育,"2022,"36(10):"61–64.
[2] 王莉,"林佳,"曹蕾,"等."基于“新发展理念”的医工融合教学探析——以《生物信息学前沿》为例[J]."华北理工大学学报(社会科学版),"2022,"22(1):"142–146.
[3] 李曼菲,"黄敏,"杜何为."创新创业背景下《生物信息学》课程的教学改革与实践[J]."科技资讯,"2022,"20(23):"152–156.
[4] 王莉,"林佳,"曹蕾."基于生物信息学前沿课程的医工融合教学改革研究[J]."高教学刊,"2022,"8(18):"142–145.
[5] 胡艳玲,"黄海纯,"蒋永华,"等."科研实践融进生物信息学课程教学研究[J]."大学教育,"2023(5):"53–55.
[6] 王燕忠,"但青,"张钧."生物信息学在医学检验中的研究进展及研究生教学中的意义与应用[J]."全科医学临床与教育,"2023,"21(3):"242–244,"255.
[7] 阮陟,"王泽宇,"冯晔."医学生物信息学培养研究生科研思维初探[J]."基础医学教育,"2021,"23(1):"64–66.
[8] 古丽娟,"曾智."生物信息学在医学研究生科研活动中的意义及培养途径[J]."继续医学教育,"2021,"35(7):"53–55.
[9] 华琳,"夏翃."浅谈医学院校《生物信息学》课程的在线教学[J]."医学教育管理,"2021,"7(z1):"78–80,"107.
[10] 陈湖星,"严海丹,"王先龙,nbsp;等."具有医学特色的生物信息学研究型教学模式探究[J]."福建医科大学学报(社会科学版),"2020,"21(2):"60–64.
[11] 王慧,"张培培,"蔡润林,"等."《生物信息学》课程的跨学科教学模式探索与实践[J]."汕头大学学报(自然科学版),"2022,"37(2):"75–80.
[12] 王喻."《生物信息学课程设计》教学探索[J]."产业与科技论坛,"2020,"19(5):"181–182.
(收稿日期:2024–07–29)
(修回日期:2024–10–17)