雷澤 劉海軍 崔春杰 王高遠
摘?要:本文旨在探討面向數據分析的Python語言課程設計,讓學生更好地適應大數據時代。闡述了當前的時代背景和Python語言課程的現狀,并指出Python語言課程設計的教學改革的必要性。然后分析了行業的需求以及學生需要的技能和知識。指出要實現教學改革目標,可以從教學方法、教學內容、考核方案三個方面入手,最后指明了進一步研究的可能方向。
關鍵詞:Python語言課程設計;數據分析;教學改革
Abstract:This?paper?aims?to?explore?the?Python?language?course?design?for?data?analysis,so?that?students?can?better?adapt?to?the?era?of?big?data.First,this?paper?points?out?the?current?background?of?the?era?and?the?status?of?Python?language?course,and?highlights?the?necessity?of?educational?reform?for?Python?language?courses.Next,we?will?analyze?the?needs?of?the?industry?as?well?as?the?skills?and?knowledge?that?students?need.To?achieve?these?goals?in?this?educational?reform,we?can?start?from?three?aspects:teaching?methods,teaching?content,and?assessment?plans.Finally,this?paper?also?points?out?possible?directions?for?further?research.
Keywords:Python?language?course?design;Data?analysis;Teaching?reform
1?背景與現狀
1.1?大數據的時代背景
隨著互聯網的普及和信息技術的迅速進步,我們正進入一個大數據主導的新時代。數據是一種重要的資源,它會影響我們生活的方方面面。同時,數據的處理和可視化,數據的分析和可視化,也成為不可或缺的一部分。企業管理通過對大量的數據進行處理與分析,可以更好地做出決策。以短視頻行業為例,通過對播放量、用戶行為等數據的處理、分析。不僅可以提高作品的播放量和關注度,還可以為創作者帶來更多的收益和機會[1]。此外,在商業領域中,通過對市場數據的分析,企業可以更好地了解市場需求,從而制定更加精準的營銷策略和產品開發計劃。
在《“十四五”數字經濟發展規劃》中更明確指出,“數據對提高生產效率的乘數作用不斷凸顯,成為最具時代特征的生產要素”[2]。由此可見,妥善處理這些數據,并從這些數據中提取有意義的信息以提高生產效率,變得尤為關鍵。
1.2?Python語言程序設計的現狀
Pyhton作為一種簡單、易懂,并且擁有許多很好用的庫的編程語言,這是無與倫比的優勢。因此,Python編程課程已經成為許多高校計算機專業的必修課程之一,并且成為數據處理與分析的主流編程語言之一[3]。但是,目前的Python程序設計課程存在若干的問題。
Python編程語言的教學內容過于簡略,并且占據了大量的學習時間。很多教師在講授過程中,只注重知識點的講解,而忽視了學生的實踐方面。這種情況使得學生在課程結束后,盡管已經掌握了Python的基礎語法規則,但在實際應用項目中仍很困難。另外,Python作為一種社區語言,更新速度極快,導致其課程內容過時。如Python的不同版本在內部功能、某些庫的兼容性和語法構造上有著顯著的差異。然而,目前課程很少關注這些問題。因此,對Python語言程序設計的進行改革變得非常迫切。
2?行業的需求分析
為了更有效地推進課程改革,本文對當前產業需求進行了深入分析。需要明確教學目標和要求,并根據實際情況制定有效措施。隨著社會的進步,如今的各個領域都期待員工擁有更豐富的軟技術能力。特別是在計算機領域,經常會碰到各種文件格式,雖然方便了數據存儲和傳輸,但也給數據處理過程帶來了一定的挑戰。故而,這不只是要求員工擁有扎實的編程知識,還要求他們熟練掌握數據的處理、分析和可視化[4]。憑借這些專業技能,員工可以從大量數據中篩選出有意義的信息,幫助企業做出合理的決策。
因此,在推進Python課程的改革過程中,應該著重培養學生在“數據素養”上的能力。由于Python編程語言擁有眾多在數據處理和分析上表現優異的庫,它無疑是最合適的選擇。如Pandas庫為讓員工能更便捷地進行數據的處理、清理和整合等各種操作;Numpy庫對數組操作和數值分析的操作,有助力對數據進行更深層次的理解和挖掘;Matplotlib庫能夠對經過處理和分析的數據進行可視化處理,進而實現更深入的數據分析。
3?教學改革方案
通過Python課程的現狀和行業的需求分析,本文提出以下教學改革方案。主要從教學方法、教學內容、考核方案三個方面入手。
3.1?教學方法
現行的課堂教學方法主要圍繞教師展開,他們在課堂中教授知識,而學生則在課堂的下方進行傾聽。這種模式忽略了學生才是課堂的主體,在一定程度上限制了學生的主動性和創造性,使得學生過于依賴教師,缺乏自主學習的能力。特別是在Python語言教學中,這種問題更加明顯。隨著Python編程語言的不斷發展和創新,各種新的技術和工具層出不窮,如果學生缺乏自主學習的能力的話,將很難跟上Python的發展速度。因此,有必要對現有的課堂教學模式進行改革,始終把學生的需求放在首位。具體措施如下:
(1)翻轉課堂:翻轉課堂這種新的教學模式,在傳統的以教師為中心的教學模式的基礎上,引入了課外自主學習的概念,使得學生可以結合自身的實際情況,選擇適合自己的知識點進行反復學習和鞏固。如此一來,學生不再僅僅是被動的接收者,而是轉變為積極主動的學習者。
翻轉課堂的實施并不意味著減輕了教師的工作壓力。事實上,這是從傳統的“填鴨式”教學方式到如今的“互動型”教學方法。隨著時間的推移,教師的職責變得更加多樣化,他們需要制作和準備教學視頻、策劃課堂活動、提供學習資料[5]。盡管學生在課程開始前已經通過獨立學習掌握了相關知識點,但是在實際的課堂教學中,他們仍然可能面臨一些難以領會的挑戰。在這種情況下,教師需要根據學生的具體需求和問題來進行詳細的講解和指導,以便他們能更有效地理解和掌握所學知識。
(2)以問題導向的學習方法:在過去的實驗布置中,主要是根據教科書或課程大綱的要求,指導學生按照實驗的具體步驟和標準來執行。但是,對于Python這種既靈活又開放的課程,這樣的教學方法似乎并不適宜。例如,在處理Python文件時,可以選擇xlrd、openxl庫,但os庫也是一個可行的選擇。如果按照實驗的具體步驟或規定,學生只能掌握某一特定類型的庫,而不是靈活地運用來解決實際問題。
通過提出實際問題或挑戰,讓學生自主探究、設計和實施實驗方案,解決問題。不僅提高學生解決問題的能力,還可以促進學生的合作學習和交流。通過小組成員之間的相互探討、相互交換信息以及彼此評價等形式來達到共同進步的目的。
3.2?教學內容
前文中已經分析了當前行業所需的技能,如數據的處理、分析和可視化。為了讓學生具備這些技能,課程的教學內容必須增加關于數據處理和分析以及可視化的內容。通過適當地調整教學內容,學生不僅能更深入地掌握Python的語言基礎知識,還能更全面地了解和應用行業所需的各種技術。具體增加的教學內容如下:
(1)文件處理庫:處理數據時,文件的處理是不可或缺的。雖說文件處理的庫過多,比如有xlrd庫、openxl庫、os庫等,但是這些庫的基本原理都是一樣的,只是有些函數不同。xlrd庫與openxl庫這兩個庫對于處理Excel的文件特別合適。因為在它們上面都有許多表格類型的函數供用戶調用,比如公式、圖表等。它們都是用通用函數編寫而成,具有良好的兼容性。借助這些建庫,學生能夠毫不費力地從Excel文件中讀取和更改數據;os庫為用戶提供了許多與系統交互的功能。通過這些庫,學生可以了解如何在文件系統中瀏覽、創建、刪除文件和目錄。
文件的處理還需要學生更深入地了解不同文件類型的獨特屬性,以及如何正確地處理它們。比如,文本文件是最常見的,它包含有大量的文檔信息;CSV文件是一種通常以逗號分隔的文本文件;Excel文件是一個可以存儲大量數據的表格文件。
(2)Pandas庫:Pandas是一款功能極為強大的數據分析工具,能夠進行數據的讀取、處理和分析工作,并根據需要生成相應的數據表。學生必須了解如何使用Pandas讀寫數據,如何執行數據清理和分析、如何使用Pandas的各種功能來處理數據。如read_csv()和to_csv()這兩種文件,都可以輕松地進行CSV文件的讀取和寫入。還有dropna()和fillna(),這些都是用于處理數據缺失值的工具。drop_duplicates()函數去除重復的值;groupby()函數適用于數據的分類和整合。利用這些函數和技巧,學生可以更深入地解讀和分析數據,揭示其中的模式和發展方向。
Pandas還具備了DataFrame這一獨特的數據架構。這種數據結構不僅能夠處理原始文件,它還能適應多種復雜應用場景的需求,包括文件格式的轉換。DataFrame還可以方便地完成數據的切割、合并、篩選以及排序等眾多任務。這些優勢共同為數據分析創造了有利的環境。例如,可以利用DataFrame的各種功能和策略來選擇分析的數據列,并對這些選定的數據列進行綜合和統計處理,極大地簡化了數據分析和處理的步驟。
(1)Numpy庫:Numpy是用于科學計算的庫,它提供了大量的數學函數和優化的數組對象。由于Python的列表中的元素可以是各種類型,所以它們并不構成真正的數值數組,但是Numpy很好地解決了這些問題,使得這些計算變得更加高效。從數據分析的視角出發,盡管Python的列表可以用于數據的存儲和處理。
Numpy所特有的ndarray,實際上是一個擁有固定數據類型的多維數組。在使用時,用戶只需要根據所需查詢的變量來創建相應的值,就能實現快速查找到所需結果。除此之外,Numpy還提供了一系列功能強大的函數,例如,rand()用于生成隨機數字;mean()用于計算平均數。這些函數使得對數組的操作變得更為簡便。
從數據處理的角度看,Numpy為我們提供了眾多的線性代數函數以及傅里葉變換功能。本文通過分析這類數據,給出其數學表達式及其相關性質。solve()函數具有解決線性方程組等問題的能力。這類函數可以構造出許多數學方程,讓Python中的數學運算過程變得更為簡潔和高效。在統計學領域,例如,numpy.median()函數能夠處理中位數的計算,而numpy.std()函數則能夠處理標準偏差等問題。這類函數扮演著至關重要的角色,它們構成了眾多數據分析技術的核心。
(2)Matplotlib庫:Matplotlib是一個用于數據可視化的庫,可以繪制出各種類型的圖表。學生通過學習如何使用Matplotlib庫繪制餅圖、散點圖、折線圖、柱狀圖等圖表,以及如何對圖表進行美化、添加標簽和圖例等操作,可以對處理和分析之后的數據進行可視化,然后通過圖表來分析結果。
在Matplotlib庫中,有幾個重要的函數可以幫助學生創建和美化圖表。例如,scatter()用于散點圖的繪制,它可以輕松地創建一系列點,并根據需要調整點的顏色、大小和形狀。plot()函數可以用于繪制折線圖,它允許學生創建線條圖表。bar()函數用于繪制柱狀圖,它可以創建以條形展示數據的圖表。pie()函數可以用于繪制餅圖,它可以創建以扇形展示數據的圖表。subplot()函數是在一個圖形中創建子圖,它可以在一個圖形中放置多個子圖。legend()函數可以用于給圖形添加圖例,它允許學生在圖表中添加說明性的標簽,以解釋每個圖例的含義。
Matplotlib還有如顏色的映射、坐標軸的刻度配置、文本的注釋以及圖例的設定等。學生有機會通過掌握這些工具和功能,不僅可以提升圖表的美觀度,還可以給圖表增添更多的信息。這樣學生不僅能更深入地掌握和運用Python的各個知識點,還能更有效地滿足可視化的需求。
借助這些實用性極高的資源庫進行教學,Python課程能夠更好地滿足行業的實際需求。學生也可以更好地理解和應用Python語言的特點,同時也可以更好地適應社會的發展需求。
3.3?考核方案
在這種教學方法和教學內容的驅使下,為了更好地評估學生的學習效果和實際能力,本文提出了一種新的考核方案。通過使用平時性評價和終結性評價這兩種不同的評估方法,可以更準確地評估學生對知識的掌握情況。
在總評價中,平時性評價是重要的,它占據了總評價的40%,這主要包括了學生在課堂上的行為、出席的頻率以及他們參與課堂討論的熱情等多個方面。在平時性評價中,課堂表現和出勤狀況各自占20%,而針對平時項目的評價則占據了剩下的60%。這種設計的核心目的是強調學生完成項目的能力,并進一步培育學生的綜合能力。
終結性評價要求學生完成以問題為導向的課程設計,占據總評價的60%。一方面是為了檢驗學生對知識掌握的情況,另一方面是考查學生們在實際應用方面的能力,以避免出現“分數高但實際能力低”的現象。因此,教師要重視對教學過程進行反思,及時調整教學方法和手段,提高教學效果。學生們對這種考核方案也感到認同。
結語
隨著時代的進步和教育理念的更新,Python語言課程只有不斷地更新和完善,才能更好地適應時代和行業的發展,才可以培養出具備綜合能力和創新精神的人才。當然,Python語言課程還面臨著很多新的挑戰,例如,Python技術的實時應用開發等。為了應對這些挑戰,Python語言課程需要不斷地更新,同時,教師們也需要進行不斷的知識更新和教學能力的提高。只有人才與發展“雙向奔赴”才能助力經濟社會高質量發展。
參考文獻:
[1]蔣雪麗.大數據環境下大學生就業創業前景分析[J].就業與保障,2023(07):136138.
[2]李博,呂斌,王兵,等.大數據技術在木材工業中的應用前景分析[J].中國人造板,2022,29(06):16.
[3]張樂平,李東方.醫科院校Python程序設計課程教學研究[J].計算機教育,2017(08):2831.
[4]劉海橋,袁丹丹.基于大數據工程專業人才培養目標的Python語言教學改革探析[J].電腦知識與技術,2023,19(26):142145.
[5]袁靜.基于翻轉課堂的“程序設計”課程改革探析[J].科教文匯(下旬刊),2020(33):9697.