Photo by Mad Fish Digital on Unsplash 當單一資料集過於龐大,想要拆分為不同的檔案,或 在實作機器學習時,需要將資料集分為測試及訓練資料等,這時候就有機會把單一CSV檔案中的資料,依據特定條件拆分成多個CSV檔案。 而使用Pandas套件來進行資料分析,就能夠很輕鬆的解決以上任務,本文就以Kaggle網站的「 Coursera Course Dataset( coursea_data.csv ) 」 資料集為例,基於其中的課程難易度等級欄位(course_difficulty),來分別拆分多個CSV檔案,實作步驟 包含:
Photo by Clay Banks on Unsplash 在 [Python爬蟲教學]3步驟教你部署Python網頁爬蟲到Google(GCP)雲端平台 文章中,和大家分享了部署Python網頁爬蟲到Google Cloud Platform雲端平台,並且能夠將爬取的資料存入Google BigQuery數據庫,而接下來該如何定時自動化執行Python網頁爬蟲呢? 這時候,就會需要利用 Google Scheduler(雲端排程器),透過自訂時間來排程執行Python網頁爬蟲,其中的實作重點包含:
Photo by Souvik Banerjee on Unsplash 在使用Python網頁爬蟲搜集資料的過程中,隨著時間的累積,資料量就會逐步的增加形成大數據,這時候,就會需要藉由雲端資源來協助我們進行資料分析。 而Google BigQuery雲端數據庫(Cloud Data Warehouse)就是一個非常強大的資料儲存分析工具,除了能夠儲存大量的數據外,還擁有很好的查詢效能,並且可以結合Google Data Studio來進行資料視覺化。 所以本文就接續 [Python爬蟲教學]一學就會的Python網頁爬蟲動態讀取資料庫應用 文章, 來和大家分享,如何將Python網頁爬蟲爬取的資料,載入Pandas DataFrame後,存入Google BigQuery資料表,以利於分析。其中的實作步驟包含:
Photo by Christina @ wocintechchat.com on Unsplash 想必大家在開發網頁爬蟲的過程中,都會有遇到各種反爬蟲機制的經驗,而Captcha就是其中一種透過圖片驗證的方式,來增加Python網頁爬蟲爬取資料的困難度。 所以,本文就以 博客來網路書店 的登入頁面為例,來和大家分享如何利用 2Captcha服務 ,破解登入時的一般驗證碼(Normal Captcha),順利登入會員。其中實作的重點包含:
Photo by Giorgio Tomassetti on Unsplash 當手上有一份數據資料要進行分析,這時候如果是使用Pandas套件,通常會利用describe()方法(Method),來初步瞭解資料內容,但是對於想要深入分析資料集來說,資訊還不夠充足。 所以本文就以 Kaggle網站的「Netflix data with IMDB scores added」資料集(mycsvfile.csv) 為例,來和大家分享一個很常用來進行 探索式資料分析( Exploratory Data Analysis )的套件-Pandas Profiling, 能夠將Pandas DataFrame中儲存的資料,產製為一個互動式的網頁報表,並且以視覺化的方式呈現詳細的資料結構。其中的重點包含:
Photo by Yura Fresh on Unsplash 資料蒐集的過程中,為了能夠有效的整理資料,通常都會搭配使用Pandas套件來進行實作,而在完成資料整理後,有時就會需要將資料顯示在網頁上,藉此分享其中的資訊 。 Pandas套件也提供了內建方法(Method),讓資料分析人員能夠將Pandas DataFrame中整理好的資料,轉為HTML的表格來加以運用,本文就以 Kaggle網站的「Netflix data with IMDB scores added」資料集(mycsvfile.csv) 為例,來和大家分享如何利用Pandas套件將讀取到的資料顯示在網頁上,重點包含:
Photo by Zan on Unsplash 想要在機器學習或資料分析的過程中順利實作,資料集的前置處理就非常重要,像是資料清理或篩選等,而這些動作通常都是一個有順序性的流程,雖然能透過一次一次的呼叫Pandas套件方法(Method)來達成,但是如果想要讓程式碼可讀性高,以及自動化重複性的資料處理流程,就需要建置資料處理管道(Pipeline)。
Photo by Sean Lim on Unsplash 面對大量資料的分析工作中,有時想要快速識別遺漏的值,或是已經整理好報表資料,想要為老闆強調某些重要的數字等,這時候除了可以將資料匯出到Excel進行處理外,Pandas套件也提供了許多客製化Pandas DataFrame樣式的功能,來解決以上的需求。
Photo by Walling on Unsplash 你有沒有過這樣的經驗,分析的資料分散在多個CSV檔案中,想要利用Pandas套件進行合併,來實作後續的資料處理呢?如果所要分析的資料量或欄位較多時,相信資料被分類在多個CSV檔案中的情況是有機會發生的,這時候就會需要使用Pandas套件的合併方法(Method)來整合多個CSV檔案的資料 。
Photo by LinkedIn Sales Solutions on Unsplash 現在有許多網站,為了 共享擁有的資料或服務, 都會透過建立API(Application Programming Interface)的方式,給外部的使用者進行更多元的應用,對於網站來說,除了能夠方便授權外,也可以彈性管理所提供的資料內容。 這時候,如果想要利用Pandas套件強大的資料分析功能,處理網站API所回傳的JSON格式資料內容,該怎麼實作呢?本文就以 痞客邦(PIXNET)網站的Open Data API 為例,來和大家分享Pandas套件如何讀取回傳的熱門美味食記文章資料,重點包含:
Photo by Taras Shypka on Unsplash 面對現實生活中所蒐集來的各式各樣資料,想要能夠快速的進行初步整理,並且有效觀察其中的內容,資料排序可以說是最常使用的方法之一。 而Pandas套件對於資料排序的功能,也提供了非常好支援,本文就以 Kaggle網站的2009-2019年Amazon前50名暢銷書資料集(bestsellers with categories.csv) 為例, 帶大家來瞭解如何在資料集中應用Pandas套件的排序方法(Method)。重點包含:
Photo by freestocks on Unsplash LINE Bot的自動化回覆訊息功能,普遍的應用在日常生活中,尤其是服務的提供者,都會利用LINE Bot來推播最新消息或回覆客戶的問題等。 隨著各種不同類型的需求增加,有時就會需要更多的LINE Bot來提供服務,而在開發的過程中,普遍都是一個專案包含一個LINE Bot,就會造成有多個專案需要維護,有沒有辦法在一個專案中,包含多個LINE Bot呢?
DocuSign on Unsplash 使用Pandas套件實作資料清理時,除了對於遺漏、重複與拆分資料的處理外,資料型態與格式也是資料清理過程中需要注意的,這時候就可以利用Pandas套件所提供的轉型與格式化方法(Method)來有效的進行操作。 所以,本文接續 [Pandas教學]使用Pandas套件實作資料清理的必備觀念(上) 文章,使用 Kaggle網站的「Netflix data with IMDB scores added」資料集(mycsvfile.csv) , 針對資料型態與格式的部分,來和大家分享幾個Pandas套件提供的方法(Method)應用,包含:
Ioan F on Unsplash 在資料分析的過程中,蒐集來的大量數據很可能不是那麼完整,像是含有空值、NULL或重複等,這時候就需要適當的清理與處理,讓資料集更符合所需,進而能夠精確的分析。 而Pandas套件提供了許多資料清理的方法(Method),本文就以 Kaggle網站的「Netflix data with IMDB scores added」資料集(mycsvfile.csv) 為例,來和大家分享這些方法(Method)的應用方式,包含:
Pankaj Patel on Unsplash Pandas套件相信是Python開發人員在資料分析的領域中, 最普遍使用的工具之一,對於蒐集來的資料進行後續觀察及清理都相當的便利,而如果您和筆者一樣是Visual Studio Code開發工具的愛好者,利用Pandas套件操作資料後,在印出結果時,就會長得像以下的圖樣:
Photo by Sigmund on Unsplash 在實務上開發Scrapy網頁爬蟲時,難免過程中會發生錯誤或產生問題,這時候該如何有效的偵錯找到原因,進而提升開發效率及品質,就是一個非常重要的議題。 而Scrapy網頁爬蟲框架提供了許多非常實用的方法,來幫助開發人員有效的偵錯,本文就 來和大家分享3個筆者最常使用的偵錯方法,包含:
Photo by Surface on Unsplash 想要進行資料分析,除了利用Python網頁爬蟲蒐集第一層的網頁資料外,有時候為了要 更瞭解資料的內容或是 讓分析的結果更加精確,就會需要爬取下一層的網頁,也就是詳細資料。 舉例來說,筆者想要對不同廠牌的筆電進行分析,這時候使用Python網頁爬蟲除了取得網頁第一層的筆電名稱外,還需要爬取每個筆電的下一層網頁,來取得詳細的規格內容,才有辦法進行比較。
Photo by Austin Distel on Unsplash 相信大家在瀏覽網頁的經驗中,都有看過利用分頁的方式來呈現,將內容切分為好幾頁,除了能夠提升網頁的執行效率外,也增加了使用者的體驗。 在前面的Scrapy網頁爬蟲框架系列教學中,皆分享了爬取單一網頁的內容,這時候如果想要利用Scrapy網頁爬蟲框架來爬取多頁的資料,該如何實作呢?本文就來延續 [Scrapy教學7]教你Scrapy框架匯出CSV檔案方法提升資料處理效率 文章的教學內容,一起來學習這個技巧吧。
Photo by Maxwell Ridgeway on Unsplash 在實作Python網頁爬蟲時,有一個非常重要的議題,就是如何將爬取到的資料有效儲存起來,這時候除了能夠像 [Scrapy教學6]解析如何在Scrapy框架存入資料到MySQL教學 文章一樣,存入資料庫外,另一個最常使用的方法,就是檔案的匯出,像是CSV、JSON及XML等。
Photo by Cytonn Photography on Unsplash 在利用Scrapy框架開發網頁爬蟲的過程中,成功取得想要蒐集的資料後,下一個步驟就是資料的儲存,像是存入資料庫或是檔案中等,這時候,就會需要使用到Scrapy框架的item資料模型及pipeline資料模型管道模組(Module),來幫助開發人員建立好維護的資料處理方式。
Photo by Markus Winkler on Unsplas h Scrapy網頁爬蟲框架除了提供 [Scrapy教學4]掌握Scrapy框架重要的CSS定位元素方法 文章中所分享的css()方法(Method)來定位網頁元素(Element)外,也提供了xpath()定位方法(Method)讓開發者使用。 XPath(XML Path Language)是一個使用類似檔案路徑的語法,來定位XML文件中特定節點(node)的語言,因為能夠有效的尋找節點(node)位置,所以也被廣泛的使用在Python網頁爬蟲的元素(Element)定位上。
Photo by Alex Kulikov on Unsplash 在 [Scrapy教學2]實用的Scrapy框架安裝指南,開始你的第一個專案 文章,完成Scrapy框架的 安裝 以及專案的建立後,接下來,就可以在其中開發網頁爬蟲,而在開發之前,又有哪些基本的觀念需要知道?本文將 一步一步 帶大家來進行瞭解,重點包含: