王金輝 趙冬梅 王逍冬
(河北農業大學植物保護學院,河北保定 071000)
R語言的起源可以追溯到20世紀90年代,其初衷是向統計學家提供一款強大且專業的數據處理和統計分析工具[1]。S 語言是貝爾實驗室的John Chambers 于1976 年開發的一種用于數據分析和圖形表示的編程語言[2]。R 語言借鑒了S 語言的一些思想和語法結構,但是以開源的方式進行開發和發布,這意味著任何人都可以查看、使用和修改R語言的源代碼,為R語言的快速發展奠定了堅實的基礎,吸引了全球范圍內的眾多開發者和忠實用戶。在20 余年的發展中,R 語言經歷了多次重要的改進和版本更新,逐漸演化出了功能豐富且靈活的開源編程語言環境。目前,R 語言積累了強大的統計分析功能、出色的數據可視化工具和豐富的專業擴展包[3-7],已經成為數據科學和研究領域不可或缺的工具之一,在專業統計、生物醫藥、農林牧漁、環境生態、社會調查、金融服務和電商物流等諸多領域都有廣泛的應用[8-11]。R 語言的成功主要得益于其強大的社區支持和不斷增長的用戶基礎。
在信息化快速發展的背景下,許多高等院校將R 語言整合至教育體系,特別是在生物信息學教學方面[12-15]。例如,歐洲分子生物學實驗室-歐洲生物信息研究所(EMBL-EBI)就提供了大量關于R 語言的標準化網絡公開課程[16-19]。由于其通俗易懂的編程語法、強大的可擴展性以及高水準的數據可視化功能,R語言已經成為醫學類統計學、生命類生物信息學和生物統計學教學中首選的統計分析軟件[20-24]。農林高等院校也逐漸在傳統農林學科專業教學中嘗試引入R語言[25-30]。在植物病理學專業教學中,對R 語言的應用相對較少。本文結合植物病理學專業教學的體系結構和專業特點,梳理出了適合該專業與R 語言相結合的教學應用場景,并且在近兩年的植物病理學專業課程中進行了融合嘗試,積累了一定的教學經驗,為提升植物病理學專業信息化教學質量,推動農林專業的編程教學改革提供了思路和教學案例。
鑒于R 語言強大的數據統計分析內核,比較直接的結合點是對專業實驗課上生成的各類型生物學數據進行統計分析。普通植物病理學實驗課通常包括植物病原菌物的形態學觀察、植物病理組織切片、植物病原的科赫氏法則驗證、植物病害三角關系和農作物品種的抗病性鑒定等教學實驗。其中,有能夠產生觀測數據并且需要統計推斷的應用場景,例如,病斑面積的測定和種子帶菌率的調查等。對于病斑面積、病斑直徑、病組織重量和病情指數這類正態分布數據,以及田間發病率、種子帶菌率的百分比數據,都是植物病理學專業中常見和典型的觀測數據。
R 語言不局限于傳統數據的統計分析,在處理字符串數據,如核酸序列、蛋白質序列方面也表現得游刃有余。在植物病理學實驗課中,通常會涉及植物病原菌分子鑒定的教學內容,其中最重要的環節就是基于聚合酶鏈反應(Polymerase Chain Reaction,PCR)產物測序獲得的保守基因序列構建出系統發生樹,從而完成對植物病原菌的系統分類鑒定。在植物病理學專業的研究生培養課程中也有類似的教學內容,例如“植物病原菌的分子鑒定”的課堂演示中,就講授如何利用核酸序列或蛋白序列信息來計算出不同植物病原菌群體之間親緣關系的遠近,在課后作業中也有類似的練習。此類教學場景完全可以利用R語言的擴展軟件包,如Ape[31]和Adegenet[32]等,處理生物分子數據,包括多序列的比對、進化模型的擬合以及系統發生樹的可視化等整個分析流程。
在“植物病原細菌的人工接種方法”實驗中,設計了分別用兩種不同的病原細菌人工接種馬鈴薯的塊莖,對所造成的軟腐病組織進行稱重,進而比較出不同病原細菌在致病力上的差異。通過使用天平稱重測量,學生會獲得兩組不少于16個生物學重復的稱重數據,單位為g。這種稱重數據非常適合在R語言中進行兩個樣本的學生t檢驗。具體的R代碼如下。

在課堂上,教師會演示將組織稱重數據按照R語言輸入格式整理成數據框(dataframe);進行探索性數據做圖,檢查組間數據離散程度以及是否存在潛在的離群值(outliers);檢驗數據是否滿足正態分布和組間方差齊性的前提假設;使用學生氏t檢驗進行組間均值的比較。分析結束后,教師會要求學生將兩組數據的均值(mean)、方差(sd)、組間比較的t統計量以及t檢驗的P值寫入實驗報告。根據P值得出顯著水平結論,結合病菌種類做出關于致病力差異的討論分析。
在“植物病原真菌的人工接種方法”實驗中,還有用梨黑斑病菌人工接種梨果實,放置于不同溫度的培養箱內讓果實發病,然后對所造成的病斑直徑進行測量,從而比較出不同環境條件下發病的速度快慢。通過使用直尺測量,學生會獲得3 組不少于12 個生物學重復的直徑數據,單位為mm。這種多組的直徑測量數據非常適合在R語言中進行方差分析(Analysis of variance,ANOVA)。具體的R代碼如下。

在課堂上,教師會演示將梨果病斑的直徑數據按照R 語言輸入格式整理成數據框;進行探索性數據做圖,檢查組間數據離散程度以及是否有潛在離群值;檢驗組間數據是否符合方差齊性;使用方差分析和圖基檢驗進行組間的多重比較。分析結束后,教師會要求學生將F檢的F統計量和P值,以及圖基檢驗的矯正P值寫入實驗報告。根據組間比較的顯著水平得出結論,結合接種后的溫度差異做出關于環境條件影響發病快慢的討論分析。
“植物病原菌的分子鑒定”實驗中,設計了基于單個保守基因位點的系統發生樹構建環節。在獲得植物病原菌保守位點的PCR 產物測序序列后,在美國國家生物技術信息中心(National Center for Biotechnology Information,NCBI)的nr 數據庫中檢索相似序列,下載可能的同源序列,進行多序列的比對。將多序列比對結果以fasta格式讀入R語言環境。利用Ape和Adegenet軟件包中的功能即可實現鄰接法構建系統發生樹。具體的R代碼如下。

在課堂上,教師會演示如何選擇合適的核酸或蛋白質替代矩陣計算遺傳距離。學習使用鄰接法來構建系統發生樹,通常本科實驗課會使用單個基因位點進行系統發生樹的構建(即基因樹),而研究生課程則會演示多位點的序列分析,即多位點串聯樹的構建。教師會解釋如何計算系統發生樹的自展值,有助于評估樹的穩定性和可信度。將構建好的系統發生樹進行可視化作圖,以清晰的呈現某個特定植物病原菌的分類地位,并在分枝上標注出自展值。通過使用R 語言,學生能夠將實驗室產生的分子生物學數據轉化為可視化的系統發生樹,更深刻地理解和解釋植物病原菌的系統分類和群體間的親緣關系遠近。
R 語言作為一種通用性的數據分析工具,可以在不同學科領域之間建立橋梁。將植物病理學專業教學與R 語言相結合,是農林類高校傳統專業迎來信息化改革的一次有益探索。不僅使學生獲得了實際數據處理和分析的關鍵技能,更重要的是,促使學生更深入地探索和理解植物病理學的專業理論知識。這種教學改革將在培養新一代植物病理學專業人才和推動跨學科合作的發展方面發揮關鍵作用,為農林學科的信息化升級注入新活力。
綜上,本文聚焦探討了R 語言在農林高等院校植物病理學專業教學中的應用場景,并總結了R 語言應用于植物病理學專業教學的典型教學案例。新的教學模式不僅有助于學生獲得實際的數據處理和分析技能,還能夠深化學生對植物病理學專業理論知識的理解。本研究為提升植物病理學專業教學的信息化水平,以及農林類專業的編程教學改革提供了參考。