自學筆記(Python篇)

閱讀時間約 3 分鐘

在決定踏入資料科學的領域後,便開始搜尋學習程式語言的資源。但程式語言這麼多,哪些才是資料科學最需要用的呢?kaggle在2022年針對平台的資料科學家調查,他們使用程式語言的前三名為Python、SQL、R,而且近年來的調查結果都是如此。

先前把SQL學到一個段落,接下來準備學習Python吧!一開始除了在kaggle,我也同步在Hahow上課,循著學習SQL的經驗,從建立基礎概念開始,並努力靠自己的力量完成每道練習題。

在分享學習心得之前,我想先說個結論:Python的等級比SQL高很多啊!Python練習題卡關時,挫折感比SQL還嚴重,但也因為如此,靠自己成功解開後,成就感提升非常多。

不過,相比更古早的C語言,Python這種物件導向、直譯式的程式語言,已經是相對適合新手學習的,而且受到那麼多工程師的青睞,必定有它好用的地方,未來還得繼續熟悉它才行呢💪🏻


更龜毛的編輯需求

在寫Python時,除了要注意符號、縮排、與保留字有別的取名,還要注意大小寫。例如,想表達一般物件中的位置,只能用「index」,不能用「Index」(這是在Pandas模組中特有的),而邏輯運算結果的「True」,寫成「true」就無法辨識。

更令新手混淆的是,同義的文字跟符號之間,也不能隨意互換。像是「and」跟「&」在不同的物件種類下,運算結果是不同的,「or」跟「|」也是同樣的情形。詳細的差異說明,可以Google一下,也許你能體會初學者「蛤?」的心情😅

還有一個令我印象深刻的是,各種括號的意義。以數學的術語來說,圓的「( )」稱作小括號,方的「[ ]」稱作中括號,扭動的「{ }」稱作大括號。在我學SQL時,只會用到小括號,而在Python時,三個全上了!各自的用途不同,同個括號在不同情境中的意思也不同。說這是新手學Python要克服的第一個門檻,應該不算誇張。

寫數學證明的既視感

唸數學系最常被訓練的技能,就是「證明」——如何用既有的定義、假設、已知的性質,以合乎邏輯的過程,推導出更多的性質、定理。

沒有想到學Python時,也跟寫數學證明有些雷同之處。例如運算中需要的物件,必須要自行假設,才可以在後面的程式碼中使用,就像假設x、y為某個數學物件一樣。Python內建的函數,則像是已知的性質或定理,可以直接宣告出來使用。

可惜,總會遇到不敷使用的時候,這時有兩個方法。一個是找合適的第三方套件,從中選擇函數來使用。第三方套件就像是有一群人幫忙證明出許多好用的性質,你可以直接拿來用,幫你做到更多的事。

另一個方法是,靠自己定義新的函數。就像數學證明中,想要得出一個結論,但有些前提條件不足,或是可用的已知性質不足,就得把推論的路徑分段,每一段都推導出一個新的性質,綜合這些性質來推得最終目的。成功創造出可用的函數,跟自己推導出新理論的爽感,想必是等價的😆

「寫證明時,應該要確定每一步是正確的,才能繼續寫下去。」這是我在唸數學系時最有感的一句話。不過現實是,通常我們以為是正確的,其實是錯誤的;寫Python也會遇到相同的情形,你以為這樣寫可以得到預期輸出,但最後風馬牛不相及。好在,現在有些資源可以幫助你檢視Python的每個步驟,不用擔心自己檢查是否有疏漏。在此推薦PythonTutor這個好網站給所有的新手,雖然它不會告訴你怎麼修正,但至少幫助檢視你寫的是不是你想的,方便找出可能需要改的地方。


學完基礎的內容後,未來打算多熟練所學的技巧與方法,找更多的練習、應用情境來做,希望熟能生巧,逐步累積成果,讓我具備足以處理數據分析任務的能力,成功踏入資料科學的領域中!

11會員
38Content count
世界不斷變動,總有些新奇的事物,等待我去發掘、剖析與分享。
留言0
查看全部
發表第一個留言支持創作者!
貓想享 的其他內容
在準備轉職期間,為了能更接近數據分析的領域,首先決定要進修的領域是程式語言,首先從門檻相對不高的SQL(Structured Query Language,結構化查詢語言)開始。在此分享目前為止學到的一些小小心得。
在重新當個學習者的期間,我還同時準備了TOEIC檢定考試。仗著自己的英文底子,加上曾經參加過GEPT的經驗,以為準備起來很容易。這裡就談談我準備的經驗,以及記錄未來還能努力的方向。
決定離開現職後,想要重新發展自己的技能樹:數據分析。在此記錄思考的歷程,以及接下來準備轉職的策略。
走在環保的路上,那些與時俱進、更好用的「周邊小物」分享與心路歷程。
分享我在承裝「固體食物」的環保用品與心路歷程。
分享我在承裝「液體」的環保用品與心路歷程。
在準備轉職期間,為了能更接近數據分析的領域,首先決定要進修的領域是程式語言,首先從門檻相對不高的SQL(Structured Query Language,結構化查詢語言)開始。在此分享目前為止學到的一些小小心得。
在重新當個學習者的期間,我還同時準備了TOEIC檢定考試。仗著自己的英文底子,加上曾經參加過GEPT的經驗,以為準備起來很容易。這裡就談談我準備的經驗,以及記錄未來還能努力的方向。
決定離開現職後,想要重新發展自己的技能樹:數據分析。在此記錄思考的歷程,以及接下來準備轉職的策略。
走在環保的路上,那些與時俱進、更好用的「周邊小物」分享與心路歷程。
分享我在承裝「固體食物」的環保用品與心路歷程。
分享我在承裝「液體」的環保用品與心路歷程。
你可能也想看
Thumbnail
重點摘要: 1.9 月降息 2 碼、進一步暗示年內還有 50 bp 降息 2.SEP 上修失業率預期,但快速的降息速率將有助失業率觸頂 3.未來幾個月經濟數據將繼續轉弱,經濟復甦的時點或是 1Q25 季底附近
Thumbnail
近期的「貼文發佈流程 & 版型大更新」功能大家使用了嗎? 新版式整體視覺上「更加凸顯圖片」,為了搭配這次的更新,我們推出首次貼文策展 ❤️ 使用貼文功能並完成這次的指定任務,還有機會獲得富士即可拍,讓你的美好回憶都可以用即可拍珍藏!
Thumbnail
今天我要跟大家分享的是python寫的猜數字遊戲。遊戲的規則很簡單,就是電腦會隨機產生一個1到100之間的整數,然後讓使用者猜這個數字是多少,每次猜完電腦會提示使用者是猜大了還是猜小了,直到猜中為止,遊戲還會記錄使用者猜了幾次,並根據次數給予不同的評價,下面我們來看看程式碼吧!
事件是什麼: 發生了一件事情 執行相對應的程式 常見事件的種類: onclick 「點擊」 onmouseover 「滑鼠移入」 onmouseout 「滑鼠移出」 onmousedown 「滑鼠按住」 onmouseup 「滑鼠放開」 事件處理的三大關鍵: 在哪個事件上發生 事件的種類是什麼 執行
HTML DOM 是什麼? 根據HTML標籤建立的物件結構 每個HTML標籤在Javascript中都有對應的標籤物件 把HTML標籤物件串接在一起, 成為物件結構, 就稱之為HTML DOM HTML DOM (Document Object Model) 操作Document 物件: Docum
陣列是什麼: 按照順序存放其他資料的容器 Javascript 內建的物件 利用有順序的編號,來管理內部的資料 基本語法: 取得陣列長度: 陣列.length 取得陣列中特定編號的資料: 練習題:班上同學有五位,成績分別為 20,35,45,70,100, 請印出班上成績的總平均:
基本語法: 物件的函式: 呼叫函式的方法: this 在物件的用法: JSON 寫法:
Thumbnail
請務必學會唱譜。在教學經驗上遇過許多學生不太清楚怎麼唸,而導致不知道該怎麼打節奏,或是打出來卻不知道自己打得是否正確。 所以在未來要能夠自學的話,一定要學會如何唸。
Thumbnail
【爵士鼓自學筆記】是筆者將多年學習與教學經驗總合而成的一套練習方法。學習一個專業技能的方法有百百種,而最重的就是找到適合自己的方法,希望筆者的這套學習與練習方法,能夠幫助到正在學習爵士鼓的各位。
Thumbnail
這個筆記延續2018年尚未完成的自學筆記(也太久)。中間因為又回到府中15的工作,再加上2019年參加了政大第二屆實驗教育師培計劃,然後又有疫情,再來又換工作...這是以各種為藉口荒廢的格子...想跟大家分享這幾年來跟女兒一路自學的心境變化,以及一些抒發心情的廢文。
Thumbnail
台灣總統大選常聽見的「拚經濟」的口號,「經濟」一詞/同志平權運動始終呼籲的「人權」的主張,「人權」一詞/《同婚專法》所謂的「法律」的制定審查,「法律」一詞/香港反送中遊行抗爭牽涉到個人「自由」,「自由」一詞/林志玲「女神」甜蜜閃婚幸福,「女神」一詞/阿翔謝忻事件延伸出的「不倫」等都來自「日製漢字」。
Thumbnail
重點摘要: 1.9 月降息 2 碼、進一步暗示年內還有 50 bp 降息 2.SEP 上修失業率預期,但快速的降息速率將有助失業率觸頂 3.未來幾個月經濟數據將繼續轉弱,經濟復甦的時點或是 1Q25 季底附近
Thumbnail
近期的「貼文發佈流程 & 版型大更新」功能大家使用了嗎? 新版式整體視覺上「更加凸顯圖片」,為了搭配這次的更新,我們推出首次貼文策展 ❤️ 使用貼文功能並完成這次的指定任務,還有機會獲得富士即可拍,讓你的美好回憶都可以用即可拍珍藏!
Thumbnail
今天我要跟大家分享的是python寫的猜數字遊戲。遊戲的規則很簡單,就是電腦會隨機產生一個1到100之間的整數,然後讓使用者猜這個數字是多少,每次猜完電腦會提示使用者是猜大了還是猜小了,直到猜中為止,遊戲還會記錄使用者猜了幾次,並根據次數給予不同的評價,下面我們來看看程式碼吧!
事件是什麼: 發生了一件事情 執行相對應的程式 常見事件的種類: onclick 「點擊」 onmouseover 「滑鼠移入」 onmouseout 「滑鼠移出」 onmousedown 「滑鼠按住」 onmouseup 「滑鼠放開」 事件處理的三大關鍵: 在哪個事件上發生 事件的種類是什麼 執行
HTML DOM 是什麼? 根據HTML標籤建立的物件結構 每個HTML標籤在Javascript中都有對應的標籤物件 把HTML標籤物件串接在一起, 成為物件結構, 就稱之為HTML DOM HTML DOM (Document Object Model) 操作Document 物件: Docum
陣列是什麼: 按照順序存放其他資料的容器 Javascript 內建的物件 利用有順序的編號,來管理內部的資料 基本語法: 取得陣列長度: 陣列.length 取得陣列中特定編號的資料: 練習題:班上同學有五位,成績分別為 20,35,45,70,100, 請印出班上成績的總平均:
基本語法: 物件的函式: 呼叫函式的方法: this 在物件的用法: JSON 寫法:
Thumbnail
請務必學會唱譜。在教學經驗上遇過許多學生不太清楚怎麼唸,而導致不知道該怎麼打節奏,或是打出來卻不知道自己打得是否正確。 所以在未來要能夠自學的話,一定要學會如何唸。
Thumbnail
【爵士鼓自學筆記】是筆者將多年學習與教學經驗總合而成的一套練習方法。學習一個專業技能的方法有百百種,而最重的就是找到適合自己的方法,希望筆者的這套學習與練習方法,能夠幫助到正在學習爵士鼓的各位。
Thumbnail
這個筆記延續2018年尚未完成的自學筆記(也太久)。中間因為又回到府中15的工作,再加上2019年參加了政大第二屆實驗教育師培計劃,然後又有疫情,再來又換工作...這是以各種為藉口荒廢的格子...想跟大家分享這幾年來跟女兒一路自學的心境變化,以及一些抒發心情的廢文。
Thumbnail
台灣總統大選常聽見的「拚經濟」的口號,「經濟」一詞/同志平權運動始終呼籲的「人權」的主張,「人權」一詞/《同婚專法》所謂的「法律」的制定審查,「法律」一詞/香港反送中遊行抗爭牽涉到個人「自由」,「自由」一詞/林志玲「女神」甜蜜閃婚幸福,「女神」一詞/阿翔謝忻事件延伸出的「不倫」等都來自「日製漢字」。