[摘要]"在人工智能與大數(shù)據(jù)分析技術迅速發(fā)展的背景下,R語言逐漸受到科研工作者,特別是青年學者和研究生的青睞。本文基于R語言的特點,探索醫(yī)學院校R語言課程的教學內容及教學模式的重構改革,結合醫(yī)學專業(yè)的特點,設計實用性強且易學易懂的應用案例,通過對案例的開發(fā),激發(fā)醫(yī)學生學習R語言的興趣,培養(yǎng)醫(yī)學生利用計算機技術進行大數(shù)據(jù)分析的能力。
[關鍵詞]"大數(shù)據(jù)分析;R語言;生物信息學
[中圖分類號]"R857.3""""""[文獻標識碼]"A""""""[DOI]"10.3969/j.issn.1673-9701.2024.31.020
1""引言
20世紀80年代,分子生物學的快速發(fā)展和DNA測序技術的進步,導致DNA序列、蛋白質序列、基因表達數(shù)據(jù)等生物分子數(shù)據(jù)呈現(xiàn)出爆炸性的增長。傳統(tǒng)的生物學研究方法難以有效管理和分析這些數(shù)據(jù),因此亟需新的分析方法。人類基因組計劃于1990年啟動,至2001年人類基因組工作草圖發(fā)表,期間產生大量的基因組數(shù)據(jù),標志著生物信息學進入一個新的發(fā)展階段。信息技術的進步和跨學科的合作進一步推動生物信息學的迅速發(fā)展,使其在醫(yī)療健康領域發(fā)揮重要作用。
王丹等[1]通過對生物信息學人才需求的調查研究發(fā)現(xiàn),生物信息學人才需具備利用計算機技術解決實際應用問題的能力。王莉等[2]以生物信息學前沿課程為例,探討新理念下的教學改革,實現(xiàn)醫(yī)工的有機結合。李曼菲等[3]針對生物信息學課程的教學改革提出培養(yǎng)學生具有創(chuàng)新能力為目標的方案。王莉等[4]以培養(yǎng)學生的創(chuàng)新思維為目標,研究生物信息學前沿課程的教學改革。胡艷玲等[5]通過分析當前生物信息學教學中的不足,提出將科研實踐融入課程教學的新方法。王燕忠等[6]討論醫(yī)學檢驗專業(yè)學習生物信息學課程的必要性,闡述生物信息學在培養(yǎng)綜合性醫(yī)學檢驗人才方面的重要性。阮陟等[7]探討醫(yī)學信息學教學對培養(yǎng)醫(yī)學研究生計算思維及科研思維能力的重要性。諸多學者對生物信息學課程的教學與實踐進行深入研究和探討[8-12]。
綜合上述研究發(fā)現(xiàn)R語言是生物信息學課程學習的一項重要工具。R語言是一種開源編程語言,專為統(tǒng)計計算和圖形生成而設計,由新西蘭奧克蘭大學的Robert"Gentleman和Ross"Ihaka等人開發(fā)。R語言具有強大的數(shù)據(jù)處理能力,能夠高效分析生物信息學中的大型數(shù)據(jù)集,包括數(shù)據(jù)清洗、數(shù)據(jù)歸一化及格式轉換等。R語言內置的統(tǒng)計分析功能,如相關性分析、聚類分析和邏輯回歸分析,能構建多種復雜模型。此外,R語言豐富的圖表生成功能非常適合展示生物學中復雜的數(shù)據(jù)關系。在生物信息學領域,基因組學、轉錄組學和代謝組學等數(shù)據(jù)分析可通過R語言的擴展包實現(xiàn)。如可利用R語言的Biostrings包處理生物序列數(shù)據(jù),差異表達基因分析則可通過R語言中的DESeq2或edgeR包實現(xiàn),而對全基因組序列數(shù)據(jù)的訪問和處理則可通過BSgenome包完成。此外,R語言還可用于生物路徑分析,并實現(xiàn)多種機器學習算法,以構建預測模型用于疾病預測或生物標志物的發(fā)現(xiàn)。
R語言對數(shù)據(jù)處理、圖形生成和統(tǒng)計分析的強大功能為生物學研究提供有力支持。國內外多所高校和研究機構已為本科生開設R語言課程。但目前各醫(yī)學院校的生物信息學專業(yè)開設時間較短,具備交叉學科背景的師資隊伍相對匱乏,缺乏豐富的R語言課程教學經驗,而R語言課程的內容往往枯燥難懂,學生難以理解。因此,探索R語言課程的教學內容與教學模式,對醫(yī)學院校有效開設該課程并取得良好教學效果至關重要。
2""R語言的優(yōu)勢
2.1""數(shù)據(jù)分析的意義
數(shù)據(jù)分析是從數(shù)據(jù)中提取有價值信息的過程,通常包括數(shù)據(jù)清洗、數(shù)據(jù)轉換和建模等步驟。通過運用數(shù)學算法、統(tǒng)計方法及多種工具來實現(xiàn)這一過程。大數(shù)據(jù)分析則是指對大規(guī)模數(shù)據(jù)進行分析。大數(shù)據(jù)的來源、數(shù)據(jù)類型及其特征見圖1。
2.2""數(shù)據(jù)分析工具的對比
數(shù)據(jù)分析工具主要包括R、Python、Stata、MATLAB、EViews、SAS和SPSS等。每種數(shù)據(jù)分析工具的特點描述見圖2。
2.3""R語言的特點
R語言具有強大的統(tǒng)計數(shù)據(jù)分析能力和繪圖功能,其源代碼是開放的。與其他統(tǒng)計分析工具相比,R語言具有諸多優(yōu)點,因此更適用于生物大數(shù)據(jù)的分析與挖掘,見圖3。
生物信息學專業(yè)注重學科交叉與融合,因此醫(yī)
學院校生物信息學專業(yè)的學生學習R語言課程,旨在啟發(fā)他們綜合運用數(shù)學、物理和計算機知識的能力,拓寬知識面,了解學科前沿及最新進展,培養(yǎng)解決該領域實際問題的能力,為今后進行生命科學研究奠定基礎。因此,在醫(yī)學院校生物信息學專業(yè)開設R語言課程十分必要。
3""R語言課程設計
3.1""教學內容重構設計
R語言的主要功能包括統(tǒng)計分析和可視化,因此R語言課程的教學內容主要分為R語言的基礎知識、可視化和統(tǒng)計分析,見圖4。
由于醫(yī)學院校的學生大多計算機編程基礎較薄弱,因此R語言課程的內容安排盡可能簡潔、通俗易懂。該課程大致分為三個部分:第一部分主要介紹R語言的基礎知識。R是一種解釋型編程語言,輸入的命令能夠直接執(zhí)行,與C語言等其他編程語言不同,無需編譯和鏈接等操作。在R語言中,所有操作都是針對存儲在活動內存中的對象進行的。因此,本部分引入數(shù)據(jù)對象和數(shù)據(jù)類型的相關介紹。數(shù)據(jù)、結果及圖形的輸入和輸出通過文件的讀寫實現(xiàn)。R語言通過使用工作目錄來處理文件的讀取和寫入,即數(shù)據(jù)的存儲和讀取。這一部分的最后將從編程的角度闡述R語言中的基本技術。第二部分內容主要描述R語言的可視化繪圖功能。R語言中主要有兩種繪圖函數(shù):一種是高級繪圖函數(shù),用于創(chuàng)建新的圖形;另一種是低級繪圖函數(shù),用于在現(xiàn)有圖形上添加元素。本部分將重點介紹R語言中常見圖形的繪制方法。第三部分主要是R語言的數(shù)據(jù)分析功能。將通過具體實例介紹R語言的多種數(shù)據(jù)分析功能,包括相關分析、經典回歸分析、時間序列分析、主成分分析與因子分析、判別分析與聚類分析、典型相關分析與對應分析。每種數(shù)據(jù)分析方法都將通過應用案例的方式進行引入和闡述,以便更好地理解其實際應用。
3.2""教學模式設計
為幫助學生更好地理解和掌握R語言,教學方式采用理論與實踐相結合、線上與線下相結合、課內教學與課后實踐相結合以及項目化實現(xiàn)的綜合方法。這4種教學方式在教學過程中交替運用,通過與專業(yè)相關的案例驅動,旨在實現(xiàn)開發(fā)案例目標。結合多種教學方式,可加深學生對R語言課程理論內容的理解,并熟練掌握R語言的編程操作。具體的教學方式見圖5。
3.3""應用案例
結合醫(yī)學專業(yè),以應用案例驅動的方式引入直方圖的制作方法,通過以下簡單易懂的案例講解如何使用R語言制作直方圖。
案例:使用R語言制作上海市各區(qū)手足口病患病人數(shù)的直方圖。相關數(shù)據(jù)以.xlsx格式的文件分發(fā)給學生。核心程序代碼如下:
gt;library(RODBC)
gt;zlt;-odbcConnectExcel2007(\"C:/data/disease.xlsx\")
gt;sqlt;-sqlFetch(z,\"Sheet1\")
gt;close(z)
gt;hist(sq$DLXF)
請為上述直方圖添加標題,并修改坐標軸的刻度和名稱??墒褂靡韵抡Z句對直方圖進行相應修改。
gt;hist(sq$\"手足口病人數(shù)/萬人\",
main=\"手足口病人數(shù)分布\",xlim=c(0,10),"ylim=c(0,10),
xlab=\"手足口病人數(shù)\",ylab=\"人數(shù)\")
在上述程序運行過程中,學生可能遇到各種程序運行錯誤,如在執(zhí)行sqlFetch(z,\"Sheet1\")時出現(xiàn)錯誤提示:“第一個參數(shù)不是一個打開的RODBC通道”。通過對程序運行中出現(xiàn)的錯誤進行分析,引入R語言的理論知識講解。在顯示正確結果后,返回程序源代碼,通過逐行講解每一句代碼,逐步引入R語言的基礎理論知識。如R函數(shù)的安裝、調用及數(shù)據(jù)文件的讀取和關閉等。案例驅動的教學方式簡單易懂,初學者易接受。這不僅能激發(fā)非計算機專業(yè)的醫(yī)學生對R語言課程的興趣,還能通過實際操作加深他們對R語言理論知識的理解。
基于R語言制作直方圖的程序代碼,完成課后作業(yè):制作散點圖。提示:散點圖的函數(shù)為plot()。素材文件以.xlsx格式分發(fā)。結果要求顯示見圖6。
對R語言的其他圖表制作采用案例驅動方式。如制作人口普查情況曲線標繪圖和箱線圖見圖7、圖8。在學習每一類圖表制作的過程中,結合多種教學方法完成案例的開發(fā)。通過對每個應用案例的程序編寫過程,融入R語言的基礎理論知識講解。在程序運行過程中,可出現(xiàn)各種類型的代碼錯誤,通過對這些錯誤的修改,能加深對R語言基礎知識的理解。程序編寫的過程也是鍛煉學生計算思維能力的過程。最終,通過綜合案例的開發(fā),提升學生利用計算機技術解決實際問題的邏輯思維能力和創(chuàng)新應用能力。
4""結語
在大數(shù)據(jù)背景下,生命科學領域的數(shù)據(jù)量迅速增加,促進生物信息學的產生與發(fā)展。對生物信息的處理、存儲及分析是生物醫(yī)藥數(shù)據(jù)科學領域學生必須掌握的基本能力。首先,R語言作為一種新興的統(tǒng)計編程語言,其眾多優(yōu)點使其成為醫(yī)學院生物信息學專業(yè)學生進行數(shù)據(jù)分析的理想工具。然而,由于生物信息學是一門交叉學科,授課教師需具備生命科學、數(shù)學和計算機等多方面的背景,這類人才目前十分緊缺,導致R語言課程建設進展緩慢。其次,傳統(tǒng)的教學手段多以理論教學為主,實際操作時間不足,課程內容往往顯得抽象和枯燥,學生難以理解,興趣較低,導致課程內容的掌握變得困難。第三,教學內容缺乏新穎性,教學案例未能與醫(yī)學相關專業(yè)相結合,無法有效解決學生在本專業(yè)中遇到的實際問題。因此在醫(yī)學院校開設R語言課程不僅需要提升教師的專業(yè)水平,還需從教學內容和教學方式等方面對R語言課程進行改革和建設。本文基于對R語言課程的分析,探索教學內容及教學方式改革,重構R語言課程的教學內容和教學模式。期望通過對R語言課程的學習,醫(yī)學院的學生能熟練掌握R語言,利用其進行生物醫(yī)學大數(shù)據(jù)的分析,并有效解決本專業(yè)相關的實際問題。
利益沖突:所有作者均聲明不存在利益沖突。
[參考文獻]
[1] 王丹,"王晨宇,"沙巖."生物信息學人才培養(yǎng)的需求調查研究[J]."繼續(xù)醫(yī)學教育,"2022,"36(10):"61–64.
[2] 王莉,"林佳,"曹蕾,"等."基于“新發(fā)展理念”的醫(yī)工融合教學探析——以《生物信息學前沿》為例[J]."華北理工大學學報(社會科學版),"2022,"22(1):"142–146.
[3] 李曼菲,"黃敏,"杜何為."創(chuàng)新創(chuàng)業(yè)背景下《生物信息學》課程的教學改革與實踐[J]."科技資訊,"2022,"20(23):"152–156.
[4] 王莉,"林佳,"曹蕾."基于生物信息學前沿課程的醫(yī)工融合教學改革研究[J]."高教學刊,"2022,"8(18):"142–145.
[5] 胡艷玲,"黃海純,"蔣永華,"等."科研實踐融進生物信息學課程教學研究[J]."大學教育,"2023(5):"53–55.
[6] 王燕忠,"但青,"張鈞."生物信息學在醫(yī)學檢驗中的研究進展及研究生教學中的意義與應用[J]."全科醫(yī)學臨床與教育,"2023,"21(3):"242–244,"255.
[7] 阮陟,"王澤宇,"馮曄."醫(yī)學生物信息學培養(yǎng)研究生科研思維初探[J]."基礎醫(yī)學教育,"2021,"23(1):"64–66.
[8] 古麗娟,"曾智."生物信息學在醫(yī)學研究生科研活動中的意義及培養(yǎng)途徑[J]."繼續(xù)醫(yī)學教育,"2021,"35(7):"53–55.
[9] 華琳,"夏翃."淺談醫(yī)學院?!渡镄畔W》課程的在線教學[J]."醫(yī)學教育管理,"2021,"7(z1):"78–80,"107.
[10] 陳湖星,"嚴海丹,"王先龍,nbsp;等."具有醫(yī)學特色的生物信息學研究型教學模式探究[J]."福建醫(yī)科大學學報(社會科學版),"2020,"21(2):"60–64.
[11] 王慧,"張培培,"蔡潤林,"等."《生物信息學》課程的跨學科教學模式探索與實踐[J]."汕頭大學學報(自然科學版),"2022,"37(2):"75–80.
[12] 王喻."《生物信息學課程設計》教學探索[J]."產業(yè)與科技論壇,"2020,"19(5):"181–182.
(收稿日期:2024–07–29)
(修回日期:2024–10–17)