'用Python執行SQL、Excel常見任務?10個方法全搞定'

"

數據從業者有許多工具可用於分割數據。有些人使用 Excel,有些人使用SQL,有些人使用Python。對於某些任務,使用 Python 的優點是顯而易見的。以更快的速度處理更大的數據集。使用基於 Python 構建的開源機器學習庫。你可以輕鬆導入和導出不同格式的數據。

由於其多功能性,Python 可以成為任何數據分析師工具箱的重要組成部分。但是,這很難開始。大多數數據分析師可能熟悉 SQL 或 Excel。本篇是涉及幫助你 將技能和技術從 EXcel 和 SQL 轉移到 Python。

首先,讓我們來設置 Python。最簡單的方法就是使用 Jupyter Notebook 和 Anaconda。這個可視化界面將允許你插入 Python 代碼並立即查看輸出。這也將使你輕鬆跟隨本教程的其餘部分。

我強烈推薦使用 Anaconda,但這個初學者指南也將幫助你安裝 Python——儘管這將使本篇文章更加難以接受。

我們從基礎開始: 打開一個數據集。

01

Python資源共享群:484031800

導入數據

你可以導入.sql 數據庫並用 SQL 查詢中處理它們。在Excel中,你可以雙擊一個文件,然後在電子表格模式下開始處理它。在 Python 中,有更多複雜的特性,得益於能夠處理許多不同類型的文件格式和數據源的。

使用一個數據處理庫 Pandas,你可以使用 read 方法導入各種文件格式。使用這個方法所能導入完整的文件格式清單是在 Pandas 文檔中。你可以導入從 CSV 和 Excel 文件到 HTML 文件中的所有內容!

使用 Python 的最大優點之一是能夠從網絡的巨大範圍中獲取數據的能力,而不是隻能訪問手動下載的文件。在 Python 的requests 庫可以幫助你分類不同的網站,並從它們獲取數據,而 BeautifulSoup 庫可以幫助你處理和過濾數據,那麼你將精確得到你所需要的。如果你要去這條路線,請小心使用權問題。

在這個例子中,我們將獲取許多國家人均 GDP(一個技術術語,意思是一個國家的人均收入)的維基百科表格, 並在 Python 中使用 Pandas 庫對數據進行排序。

首先,導入我們需要的庫。


"

數據從業者有許多工具可用於分割數據。有些人使用 Excel,有些人使用SQL,有些人使用Python。對於某些任務,使用 Python 的優點是顯而易見的。以更快的速度處理更大的數據集。使用基於 Python 構建的開源機器學習庫。你可以輕鬆導入和導出不同格式的數據。

由於其多功能性,Python 可以成為任何數據分析師工具箱的重要組成部分。但是,這很難開始。大多數數據分析師可能熟悉 SQL 或 Excel。本篇是涉及幫助你 將技能和技術從 EXcel 和 SQL 轉移到 Python。

首先,讓我們來設置 Python。最簡單的方法就是使用 Jupyter Notebook 和 Anaconda。這個可視化界面將允許你插入 Python 代碼並立即查看輸出。這也將使你輕鬆跟隨本教程的其餘部分。

我強烈推薦使用 Anaconda,但這個初學者指南也將幫助你安裝 Python——儘管這將使本篇文章更加難以接受。

我們從基礎開始: 打開一個數據集。

01

Python資源共享群:484031800

導入數據

你可以導入.sql 數據庫並用 SQL 查詢中處理它們。在Excel中,你可以雙擊一個文件,然後在電子表格模式下開始處理它。在 Python 中,有更多複雜的特性,得益於能夠處理許多不同類型的文件格式和數據源的。

使用一個數據處理庫 Pandas,你可以使用 read 方法導入各種文件格式。使用這個方法所能導入完整的文件格式清單是在 Pandas 文檔中。你可以導入從 CSV 和 Excel 文件到 HTML 文件中的所有內容!

使用 Python 的最大優點之一是能夠從網絡的巨大範圍中獲取數據的能力,而不是隻能訪問手動下載的文件。在 Python 的requests 庫可以幫助你分類不同的網站,並從它們獲取數據,而 BeautifulSoup 庫可以幫助你處理和過濾數據,那麼你將精確得到你所需要的。如果你要去這條路線,請小心使用權問題。

在這個例子中,我們將獲取許多國家人均 GDP(一個技術術語,意思是一個國家的人均收入)的維基百科表格, 並在 Python 中使用 Pandas 庫對數據進行排序。

首先,導入我們需要的庫。


用Python執行SQL、Excel常見任務?10個方法全搞定


需要 Pandas 庫處理我們的數據。需要 numpy 庫來執行數值的操作和轉換。我們需要 requests 庫來從網站獲取 HTML 數據。需要 BeautifulSoup 來處理這些數據。最後,需要 Python(re)的正則表達式庫來更改在處理數據時將出現的某些字符串。

在 Python 中,不需要知道很多關於正則表達式的知識,但它們是一個強大的工具, 可用於匹配和替換某些字符串或子字符串。 如果你想了解更多,請參考以下內容。


"

數據從業者有許多工具可用於分割數據。有些人使用 Excel,有些人使用SQL,有些人使用Python。對於某些任務,使用 Python 的優點是顯而易見的。以更快的速度處理更大的數據集。使用基於 Python 構建的開源機器學習庫。你可以輕鬆導入和導出不同格式的數據。

由於其多功能性,Python 可以成為任何數據分析師工具箱的重要組成部分。但是,這很難開始。大多數數據分析師可能熟悉 SQL 或 Excel。本篇是涉及幫助你 將技能和技術從 EXcel 和 SQL 轉移到 Python。

首先,讓我們來設置 Python。最簡單的方法就是使用 Jupyter Notebook 和 Anaconda。這個可視化界面將允許你插入 Python 代碼並立即查看輸出。這也將使你輕鬆跟隨本教程的其餘部分。

我強烈推薦使用 Anaconda,但這個初學者指南也將幫助你安裝 Python——儘管這將使本篇文章更加難以接受。

我們從基礎開始: 打開一個數據集。

01

Python資源共享群:484031800

導入數據

你可以導入.sql 數據庫並用 SQL 查詢中處理它們。在Excel中,你可以雙擊一個文件,然後在電子表格模式下開始處理它。在 Python 中,有更多複雜的特性,得益於能夠處理許多不同類型的文件格式和數據源的。

使用一個數據處理庫 Pandas,你可以使用 read 方法導入各種文件格式。使用這個方法所能導入完整的文件格式清單是在 Pandas 文檔中。你可以導入從 CSV 和 Excel 文件到 HTML 文件中的所有內容!

使用 Python 的最大優點之一是能夠從網絡的巨大範圍中獲取數據的能力,而不是隻能訪問手動下載的文件。在 Python 的requests 庫可以幫助你分類不同的網站,並從它們獲取數據,而 BeautifulSoup 庫可以幫助你處理和過濾數據,那麼你將精確得到你所需要的。如果你要去這條路線,請小心使用權問題。

在這個例子中,我們將獲取許多國家人均 GDP(一個技術術語,意思是一個國家的人均收入)的維基百科表格, 並在 Python 中使用 Pandas 庫對數據進行排序。

首先,導入我們需要的庫。


用Python執行SQL、Excel常見任務?10個方法全搞定


需要 Pandas 庫處理我們的數據。需要 numpy 庫來執行數值的操作和轉換。我們需要 requests 庫來從網站獲取 HTML 數據。需要 BeautifulSoup 來處理這些數據。最後,需要 Python(re)的正則表達式庫來更改在處理數據時將出現的某些字符串。

在 Python 中,不需要知道很多關於正則表達式的知識,但它們是一個強大的工具, 可用於匹配和替換某些字符串或子字符串。 如果你想了解更多,請參考以下內容。


用Python執行SQL、Excel常見任務?10個方法全搞定


02

信任這個網站的一些代碼

這是一個更具技術性的解釋,詳細說明如何使用 Python 代碼來獲取 HTML 表格。

你可以將上面的代碼複製粘貼到你自己的 Anaconda 中,如果你用一些 Python 代碼運行,可以迭代它!

下面是代碼的輸出,如果你不修改它,就是所謂的字典。


"

數據從業者有許多工具可用於分割數據。有些人使用 Excel,有些人使用SQL,有些人使用Python。對於某些任務,使用 Python 的優點是顯而易見的。以更快的速度處理更大的數據集。使用基於 Python 構建的開源機器學習庫。你可以輕鬆導入和導出不同格式的數據。

由於其多功能性,Python 可以成為任何數據分析師工具箱的重要組成部分。但是,這很難開始。大多數數據分析師可能熟悉 SQL 或 Excel。本篇是涉及幫助你 將技能和技術從 EXcel 和 SQL 轉移到 Python。

首先,讓我們來設置 Python。最簡單的方法就是使用 Jupyter Notebook 和 Anaconda。這個可視化界面將允許你插入 Python 代碼並立即查看輸出。這也將使你輕鬆跟隨本教程的其餘部分。

我強烈推薦使用 Anaconda,但這個初學者指南也將幫助你安裝 Python——儘管這將使本篇文章更加難以接受。

我們從基礎開始: 打開一個數據集。

01

Python資源共享群:484031800

導入數據

你可以導入.sql 數據庫並用 SQL 查詢中處理它們。在Excel中,你可以雙擊一個文件,然後在電子表格模式下開始處理它。在 Python 中,有更多複雜的特性,得益於能夠處理許多不同類型的文件格式和數據源的。

使用一個數據處理庫 Pandas,你可以使用 read 方法導入各種文件格式。使用這個方法所能導入完整的文件格式清單是在 Pandas 文檔中。你可以導入從 CSV 和 Excel 文件到 HTML 文件中的所有內容!

使用 Python 的最大優點之一是能夠從網絡的巨大範圍中獲取數據的能力,而不是隻能訪問手動下載的文件。在 Python 的requests 庫可以幫助你分類不同的網站,並從它們獲取數據,而 BeautifulSoup 庫可以幫助你處理和過濾數據,那麼你將精確得到你所需要的。如果你要去這條路線,請小心使用權問題。

在這個例子中,我們將獲取許多國家人均 GDP(一個技術術語,意思是一個國家的人均收入)的維基百科表格, 並在 Python 中使用 Pandas 庫對數據進行排序。

首先,導入我們需要的庫。


用Python執行SQL、Excel常見任務?10個方法全搞定


需要 Pandas 庫處理我們的數據。需要 numpy 庫來執行數值的操作和轉換。我們需要 requests 庫來從網站獲取 HTML 數據。需要 BeautifulSoup 來處理這些數據。最後,需要 Python(re)的正則表達式庫來更改在處理數據時將出現的某些字符串。

在 Python 中,不需要知道很多關於正則表達式的知識,但它們是一個強大的工具, 可用於匹配和替換某些字符串或子字符串。 如果你想了解更多,請參考以下內容。


用Python執行SQL、Excel常見任務?10個方法全搞定


02

信任這個網站的一些代碼

這是一個更具技術性的解釋,詳細說明如何使用 Python 代碼來獲取 HTML 表格。

你可以將上面的代碼複製粘貼到你自己的 Anaconda 中,如果你用一些 Python 代碼運行,可以迭代它!

下面是代碼的輸出,如果你不修改它,就是所謂的字典。


用Python執行SQL、Excel常見任務?10個方法全搞定


你會注意到逗號分隔起來的括號的 key-value 列表。每個括號內的列表都代表了我們 dataframe 中的一行,每列都以 key 表示:我們正在處理一個國家的排名,人均 GDP(以美元表示)及其名稱(用「國家」)。

有關數據結構,如列表和詞典,如何在 Python 中的運行的更多信息,本篇將有所幫助。

幸運的是,為了將數據移動到 Pandas dataframe 中,我們不需要理解這些數據, 這是將數據聚合到 SQL 表或 Excel 電子表格的類似方式。 使用一行代碼,我們已經將這些數據分配並保存到 Pandas dataframe 中 —— 事實證明是這種情況,字典是要轉換為 dataframe 的完美數據格式。

通過這個簡單的 Python 賦值給變量 gdp,我們現在有了一個 dataframe,可以在我們編寫 gdp 的時候打開和瀏覽。我們可以為該詞添加 Python 方法, 以創建其中的數據的策略視圖。 作為我們剛剛在 Python 中使用等號和賦值的一點深入瞭解,很有幫助。

03

快速查看數據

現在,如果要快速查看我們所做的工作,我們可以使用 head() 方法,它與 Excel 中的選擇幾行或SQL中的 LIMIT 方法非常相似。輕鬆地使用它來快速查看數據集,而無需加載整個數據集!如果要查看特定數量的行,還可以在 head() 方法中插入行數。


"

數據從業者有許多工具可用於分割數據。有些人使用 Excel,有些人使用SQL,有些人使用Python。對於某些任務,使用 Python 的優點是顯而易見的。以更快的速度處理更大的數據集。使用基於 Python 構建的開源機器學習庫。你可以輕鬆導入和導出不同格式的數據。

由於其多功能性,Python 可以成為任何數據分析師工具箱的重要組成部分。但是,這很難開始。大多數數據分析師可能熟悉 SQL 或 Excel。本篇是涉及幫助你 將技能和技術從 EXcel 和 SQL 轉移到 Python。

首先,讓我們來設置 Python。最簡單的方法就是使用 Jupyter Notebook 和 Anaconda。這個可視化界面將允許你插入 Python 代碼並立即查看輸出。這也將使你輕鬆跟隨本教程的其餘部分。

我強烈推薦使用 Anaconda,但這個初學者指南也將幫助你安裝 Python——儘管這將使本篇文章更加難以接受。

我們從基礎開始: 打開一個數據集。

01

Python資源共享群:484031800

導入數據

你可以導入.sql 數據庫並用 SQL 查詢中處理它們。在Excel中,你可以雙擊一個文件,然後在電子表格模式下開始處理它。在 Python 中,有更多複雜的特性,得益於能夠處理許多不同類型的文件格式和數據源的。

使用一個數據處理庫 Pandas,你可以使用 read 方法導入各種文件格式。使用這個方法所能導入完整的文件格式清單是在 Pandas 文檔中。你可以導入從 CSV 和 Excel 文件到 HTML 文件中的所有內容!

使用 Python 的最大優點之一是能夠從網絡的巨大範圍中獲取數據的能力,而不是隻能訪問手動下載的文件。在 Python 的requests 庫可以幫助你分類不同的網站,並從它們獲取數據,而 BeautifulSoup 庫可以幫助你處理和過濾數據,那麼你將精確得到你所需要的。如果你要去這條路線,請小心使用權問題。

在這個例子中,我們將獲取許多國家人均 GDP(一個技術術語,意思是一個國家的人均收入)的維基百科表格, 並在 Python 中使用 Pandas 庫對數據進行排序。

首先,導入我們需要的庫。


用Python執行SQL、Excel常見任務?10個方法全搞定


需要 Pandas 庫處理我們的數據。需要 numpy 庫來執行數值的操作和轉換。我們需要 requests 庫來從網站獲取 HTML 數據。需要 BeautifulSoup 來處理這些數據。最後,需要 Python(re)的正則表達式庫來更改在處理數據時將出現的某些字符串。

在 Python 中,不需要知道很多關於正則表達式的知識,但它們是一個強大的工具, 可用於匹配和替換某些字符串或子字符串。 如果你想了解更多,請參考以下內容。


用Python執行SQL、Excel常見任務?10個方法全搞定


02

信任這個網站的一些代碼

這是一個更具技術性的解釋,詳細說明如何使用 Python 代碼來獲取 HTML 表格。

你可以將上面的代碼複製粘貼到你自己的 Anaconda 中,如果你用一些 Python 代碼運行,可以迭代它!

下面是代碼的輸出,如果你不修改它,就是所謂的字典。


用Python執行SQL、Excel常見任務?10個方法全搞定


你會注意到逗號分隔起來的括號的 key-value 列表。每個括號內的列表都代表了我們 dataframe 中的一行,每列都以 key 表示:我們正在處理一個國家的排名,人均 GDP(以美元表示)及其名稱(用「國家」)。

有關數據結構,如列表和詞典,如何在 Python 中的運行的更多信息,本篇將有所幫助。

幸運的是,為了將數據移動到 Pandas dataframe 中,我們不需要理解這些數據, 這是將數據聚合到 SQL 表或 Excel 電子表格的類似方式。 使用一行代碼,我們已經將這些數據分配並保存到 Pandas dataframe 中 —— 事實證明是這種情況,字典是要轉換為 dataframe 的完美數據格式。

通過這個簡單的 Python 賦值給變量 gdp,我們現在有了一個 dataframe,可以在我們編寫 gdp 的時候打開和瀏覽。我們可以為該詞添加 Python 方法, 以創建其中的數據的策略視圖。 作為我們剛剛在 Python 中使用等號和賦值的一點深入瞭解,很有幫助。

03

快速查看數據

現在,如果要快速查看我們所做的工作,我們可以使用 head() 方法,它與 Excel 中的選擇幾行或SQL中的 LIMIT 方法非常相似。輕鬆地使用它來快速查看數據集,而無需加載整個數據集!如果要查看特定數量的行,還可以在 head() 方法中插入行數。


用Python執行SQL、Excel常見任務?10個方法全搞定


我們得到的輸出是人均 GDP 數據集的前五行(head 方法的默認值),我們可以看到它們整齊地排列成三列以及索引列。請注意, Python 索引從0開始,而不是1 ,這樣,如果要調用 dataframe 中的第一個值,則使用0而不是1!你可以通過在圓括號內添加你選擇的數字來更改顯示的行數。試試看!

04

重命名列

有一件你在 Python 中很快意識到的事是,具有某些特殊字符(例如$)的名稱處理可能變得非常麻煩。我們將要 重命名某些列 ,在 Excel 中,可以通過單擊列名稱並鍵入新名稱,在SQL中,你可以執行 ALTER TABLE 語句或使用 SQL Server 中的 sp_rename。

在 Pandas 中,這樣做的方式是rename 方法。

在實現上述方法時,我們將使用列標題 「gdp_per_capita」 替換列標題「US $」 。一個快速的 .head() 方法調用確認已經更改。


"

數據從業者有許多工具可用於分割數據。有些人使用 Excel,有些人使用SQL,有些人使用Python。對於某些任務,使用 Python 的優點是顯而易見的。以更快的速度處理更大的數據集。使用基於 Python 構建的開源機器學習庫。你可以輕鬆導入和導出不同格式的數據。

由於其多功能性,Python 可以成為任何數據分析師工具箱的重要組成部分。但是,這很難開始。大多數數據分析師可能熟悉 SQL 或 Excel。本篇是涉及幫助你 將技能和技術從 EXcel 和 SQL 轉移到 Python。

首先,讓我們來設置 Python。最簡單的方法就是使用 Jupyter Notebook 和 Anaconda。這個可視化界面將允許你插入 Python 代碼並立即查看輸出。這也將使你輕鬆跟隨本教程的其餘部分。

我強烈推薦使用 Anaconda,但這個初學者指南也將幫助你安裝 Python——儘管這將使本篇文章更加難以接受。

我們從基礎開始: 打開一個數據集。

01

Python資源共享群:484031800

導入數據

你可以導入.sql 數據庫並用 SQL 查詢中處理它們。在Excel中,你可以雙擊一個文件,然後在電子表格模式下開始處理它。在 Python 中,有更多複雜的特性,得益於能夠處理許多不同類型的文件格式和數據源的。

使用一個數據處理庫 Pandas,你可以使用 read 方法導入各種文件格式。使用這個方法所能導入完整的文件格式清單是在 Pandas 文檔中。你可以導入從 CSV 和 Excel 文件到 HTML 文件中的所有內容!

使用 Python 的最大優點之一是能夠從網絡的巨大範圍中獲取數據的能力,而不是隻能訪問手動下載的文件。在 Python 的requests 庫可以幫助你分類不同的網站,並從它們獲取數據,而 BeautifulSoup 庫可以幫助你處理和過濾數據,那麼你將精確得到你所需要的。如果你要去這條路線,請小心使用權問題。

在這個例子中,我們將獲取許多國家人均 GDP(一個技術術語,意思是一個國家的人均收入)的維基百科表格, 並在 Python 中使用 Pandas 庫對數據進行排序。

首先,導入我們需要的庫。


用Python執行SQL、Excel常見任務?10個方法全搞定


需要 Pandas 庫處理我們的數據。需要 numpy 庫來執行數值的操作和轉換。我們需要 requests 庫來從網站獲取 HTML 數據。需要 BeautifulSoup 來處理這些數據。最後,需要 Python(re)的正則表達式庫來更改在處理數據時將出現的某些字符串。

在 Python 中,不需要知道很多關於正則表達式的知識,但它們是一個強大的工具, 可用於匹配和替換某些字符串或子字符串。 如果你想了解更多,請參考以下內容。


用Python執行SQL、Excel常見任務?10個方法全搞定


02

信任這個網站的一些代碼

這是一個更具技術性的解釋,詳細說明如何使用 Python 代碼來獲取 HTML 表格。

你可以將上面的代碼複製粘貼到你自己的 Anaconda 中,如果你用一些 Python 代碼運行,可以迭代它!

下面是代碼的輸出,如果你不修改它,就是所謂的字典。


用Python執行SQL、Excel常見任務?10個方法全搞定


你會注意到逗號分隔起來的括號的 key-value 列表。每個括號內的列表都代表了我們 dataframe 中的一行,每列都以 key 表示:我們正在處理一個國家的排名,人均 GDP(以美元表示)及其名稱(用「國家」)。

有關數據結構,如列表和詞典,如何在 Python 中的運行的更多信息,本篇將有所幫助。

幸運的是,為了將數據移動到 Pandas dataframe 中,我們不需要理解這些數據, 這是將數據聚合到 SQL 表或 Excel 電子表格的類似方式。 使用一行代碼,我們已經將這些數據分配並保存到 Pandas dataframe 中 —— 事實證明是這種情況,字典是要轉換為 dataframe 的完美數據格式。

通過這個簡單的 Python 賦值給變量 gdp,我們現在有了一個 dataframe,可以在我們編寫 gdp 的時候打開和瀏覽。我們可以為該詞添加 Python 方法, 以創建其中的數據的策略視圖。 作為我們剛剛在 Python 中使用等號和賦值的一點深入瞭解,很有幫助。

03

快速查看數據

現在,如果要快速查看我們所做的工作,我們可以使用 head() 方法,它與 Excel 中的選擇幾行或SQL中的 LIMIT 方法非常相似。輕鬆地使用它來快速查看數據集,而無需加載整個數據集!如果要查看特定數量的行,還可以在 head() 方法中插入行數。


用Python執行SQL、Excel常見任務?10個方法全搞定


我們得到的輸出是人均 GDP 數據集的前五行(head 方法的默認值),我們可以看到它們整齊地排列成三列以及索引列。請注意, Python 索引從0開始,而不是1 ,這樣,如果要調用 dataframe 中的第一個值,則使用0而不是1!你可以通過在圓括號內添加你選擇的數字來更改顯示的行數。試試看!

04

重命名列

有一件你在 Python 中很快意識到的事是,具有某些特殊字符(例如$)的名稱處理可能變得非常麻煩。我們將要 重命名某些列 ,在 Excel 中,可以通過單擊列名稱並鍵入新名稱,在SQL中,你可以執行 ALTER TABLE 語句或使用 SQL Server 中的 sp_rename。

在 Pandas 中,這樣做的方式是rename 方法。

在實現上述方法時,我們將使用列標題 「gdp_per_capita」 替換列標題「US $」 。一個快速的 .head() 方法調用確認已經更改。


用Python執行SQL、Excel常見任務?10個方法全搞定


05

刪除列

有一些數據損壞!如果你查看 Rank 列,你會注意到散亂的隨機破折號。這不是很好,由於實際的數字順序被破壞,這使得 Rank 列無用,特別是使用 Pandas 默認提供的編號索引。

幸運的是,使用內置的 Python 方法: del ,刪除列變得很容易。

現在,通過另外調用 head 方法,我們可以確認 dataframe 不再包含 rank 列。


"

數據從業者有許多工具可用於分割數據。有些人使用 Excel,有些人使用SQL,有些人使用Python。對於某些任務,使用 Python 的優點是顯而易見的。以更快的速度處理更大的數據集。使用基於 Python 構建的開源機器學習庫。你可以輕鬆導入和導出不同格式的數據。

由於其多功能性,Python 可以成為任何數據分析師工具箱的重要組成部分。但是,這很難開始。大多數數據分析師可能熟悉 SQL 或 Excel。本篇是涉及幫助你 將技能和技術從 EXcel 和 SQL 轉移到 Python。

首先,讓我們來設置 Python。最簡單的方法就是使用 Jupyter Notebook 和 Anaconda。這個可視化界面將允許你插入 Python 代碼並立即查看輸出。這也將使你輕鬆跟隨本教程的其餘部分。

我強烈推薦使用 Anaconda,但這個初學者指南也將幫助你安裝 Python——儘管這將使本篇文章更加難以接受。

我們從基礎開始: 打開一個數據集。

01

Python資源共享群:484031800

導入數據

你可以導入.sql 數據庫並用 SQL 查詢中處理它們。在Excel中,你可以雙擊一個文件,然後在電子表格模式下開始處理它。在 Python 中,有更多複雜的特性,得益於能夠處理許多不同類型的文件格式和數據源的。

使用一個數據處理庫 Pandas,你可以使用 read 方法導入各種文件格式。使用這個方法所能導入完整的文件格式清單是在 Pandas 文檔中。你可以導入從 CSV 和 Excel 文件到 HTML 文件中的所有內容!

使用 Python 的最大優點之一是能夠從網絡的巨大範圍中獲取數據的能力,而不是隻能訪問手動下載的文件。在 Python 的requests 庫可以幫助你分類不同的網站,並從它們獲取數據,而 BeautifulSoup 庫可以幫助你處理和過濾數據,那麼你將精確得到你所需要的。如果你要去這條路線,請小心使用權問題。

在這個例子中,我們將獲取許多國家人均 GDP(一個技術術語,意思是一個國家的人均收入)的維基百科表格, 並在 Python 中使用 Pandas 庫對數據進行排序。

首先,導入我們需要的庫。


用Python執行SQL、Excel常見任務?10個方法全搞定


需要 Pandas 庫處理我們的數據。需要 numpy 庫來執行數值的操作和轉換。我們需要 requests 庫來從網站獲取 HTML 數據。需要 BeautifulSoup 來處理這些數據。最後,需要 Python(re)的正則表達式庫來更改在處理數據時將出現的某些字符串。

在 Python 中,不需要知道很多關於正則表達式的知識,但它們是一個強大的工具, 可用於匹配和替換某些字符串或子字符串。 如果你想了解更多,請參考以下內容。


用Python執行SQL、Excel常見任務?10個方法全搞定


02

信任這個網站的一些代碼

這是一個更具技術性的解釋,詳細說明如何使用 Python 代碼來獲取 HTML 表格。

你可以將上面的代碼複製粘貼到你自己的 Anaconda 中,如果你用一些 Python 代碼運行,可以迭代它!

下面是代碼的輸出,如果你不修改它,就是所謂的字典。


用Python執行SQL、Excel常見任務?10個方法全搞定


你會注意到逗號分隔起來的括號的 key-value 列表。每個括號內的列表都代表了我們 dataframe 中的一行,每列都以 key 表示:我們正在處理一個國家的排名,人均 GDP(以美元表示)及其名稱(用「國家」)。

有關數據結構,如列表和詞典,如何在 Python 中的運行的更多信息,本篇將有所幫助。

幸運的是,為了將數據移動到 Pandas dataframe 中,我們不需要理解這些數據, 這是將數據聚合到 SQL 表或 Excel 電子表格的類似方式。 使用一行代碼,我們已經將這些數據分配並保存到 Pandas dataframe 中 —— 事實證明是這種情況,字典是要轉換為 dataframe 的完美數據格式。

通過這個簡單的 Python 賦值給變量 gdp,我們現在有了一個 dataframe,可以在我們編寫 gdp 的時候打開和瀏覽。我們可以為該詞添加 Python 方法, 以創建其中的數據的策略視圖。 作為我們剛剛在 Python 中使用等號和賦值的一點深入瞭解,很有幫助。

03

快速查看數據

現在,如果要快速查看我們所做的工作,我們可以使用 head() 方法,它與 Excel 中的選擇幾行或SQL中的 LIMIT 方法非常相似。輕鬆地使用它來快速查看數據集,而無需加載整個數據集!如果要查看特定數量的行,還可以在 head() 方法中插入行數。


用Python執行SQL、Excel常見任務?10個方法全搞定


我們得到的輸出是人均 GDP 數據集的前五行(head 方法的默認值),我們可以看到它們整齊地排列成三列以及索引列。請注意, Python 索引從0開始,而不是1 ,這樣,如果要調用 dataframe 中的第一個值,則使用0而不是1!你可以通過在圓括號內添加你選擇的數字來更改顯示的行數。試試看!

04

重命名列

有一件你在 Python 中很快意識到的事是,具有某些特殊字符(例如$)的名稱處理可能變得非常麻煩。我們將要 重命名某些列 ,在 Excel 中,可以通過單擊列名稱並鍵入新名稱,在SQL中,你可以執行 ALTER TABLE 語句或使用 SQL Server 中的 sp_rename。

在 Pandas 中,這樣做的方式是rename 方法。

在實現上述方法時,我們將使用列標題 「gdp_per_capita」 替換列標題「US $」 。一個快速的 .head() 方法調用確認已經更改。


用Python執行SQL、Excel常見任務?10個方法全搞定


05

刪除列

有一些數據損壞!如果你查看 Rank 列,你會注意到散亂的隨機破折號。這不是很好,由於實際的數字順序被破壞,這使得 Rank 列無用,特別是使用 Pandas 默認提供的編號索引。

幸運的是,使用內置的 Python 方法: del ,刪除列變得很容易。

現在,通過另外調用 head 方法,我們可以確認 dataframe 不再包含 rank 列。


用Python執行SQL、Excel常見任務?10個方法全搞定


06

在列中轉換數據類型

有時,給定的數據類型很難使用。這個方便的教程將分解 Python 中不同數據類型之間的差異,以便你需要複習。

在 Excel 中,你可以右鍵單擊並找到將列數據轉換為不同類型的數據的方法。你可以複製一組由公式呈現的單元格,並將其粘貼為值,你可以使用格式選項快速切換數字,日期和字符串。

有時候,在 Python 中切換一種數據類型為其他數據類型並不容易,但當然有可能。

我們首先在 Python 中使用 re 庫。我們將使用 正則表達式來替換 gdp_per_capita 列中的逗號 ,以便我們可以更容易地使用該列。

re.sub 方法本質上是使用空格替換逗號。以下詳細介紹了 re庫 的各個方法。

現在我們已經刪除了逗號,我們可以輕易地將列轉換為數字。

現在我們可以計算這列的平均值。


"

數據從業者有許多工具可用於分割數據。有些人使用 Excel,有些人使用SQL,有些人使用Python。對於某些任務,使用 Python 的優點是顯而易見的。以更快的速度處理更大的數據集。使用基於 Python 構建的開源機器學習庫。你可以輕鬆導入和導出不同格式的數據。

由於其多功能性,Python 可以成為任何數據分析師工具箱的重要組成部分。但是,這很難開始。大多數數據分析師可能熟悉 SQL 或 Excel。本篇是涉及幫助你 將技能和技術從 EXcel 和 SQL 轉移到 Python。

首先,讓我們來設置 Python。最簡單的方法就是使用 Jupyter Notebook 和 Anaconda。這個可視化界面將允許你插入 Python 代碼並立即查看輸出。這也將使你輕鬆跟隨本教程的其餘部分。

我強烈推薦使用 Anaconda,但這個初學者指南也將幫助你安裝 Python——儘管這將使本篇文章更加難以接受。

我們從基礎開始: 打開一個數據集。

01

Python資源共享群:484031800

導入數據

你可以導入.sql 數據庫並用 SQL 查詢中處理它們。在Excel中,你可以雙擊一個文件,然後在電子表格模式下開始處理它。在 Python 中,有更多複雜的特性,得益於能夠處理許多不同類型的文件格式和數據源的。

使用一個數據處理庫 Pandas,你可以使用 read 方法導入各種文件格式。使用這個方法所能導入完整的文件格式清單是在 Pandas 文檔中。你可以導入從 CSV 和 Excel 文件到 HTML 文件中的所有內容!

使用 Python 的最大優點之一是能夠從網絡的巨大範圍中獲取數據的能力,而不是隻能訪問手動下載的文件。在 Python 的requests 庫可以幫助你分類不同的網站,並從它們獲取數據,而 BeautifulSoup 庫可以幫助你處理和過濾數據,那麼你將精確得到你所需要的。如果你要去這條路線,請小心使用權問題。

在這個例子中,我們將獲取許多國家人均 GDP(一個技術術語,意思是一個國家的人均收入)的維基百科表格, 並在 Python 中使用 Pandas 庫對數據進行排序。

首先,導入我們需要的庫。


用Python執行SQL、Excel常見任務?10個方法全搞定


需要 Pandas 庫處理我們的數據。需要 numpy 庫來執行數值的操作和轉換。我們需要 requests 庫來從網站獲取 HTML 數據。需要 BeautifulSoup 來處理這些數據。最後,需要 Python(re)的正則表達式庫來更改在處理數據時將出現的某些字符串。

在 Python 中,不需要知道很多關於正則表達式的知識,但它們是一個強大的工具, 可用於匹配和替換某些字符串或子字符串。 如果你想了解更多,請參考以下內容。


用Python執行SQL、Excel常見任務?10個方法全搞定


02

信任這個網站的一些代碼

這是一個更具技術性的解釋,詳細說明如何使用 Python 代碼來獲取 HTML 表格。

你可以將上面的代碼複製粘貼到你自己的 Anaconda 中,如果你用一些 Python 代碼運行,可以迭代它!

下面是代碼的輸出,如果你不修改它,就是所謂的字典。


用Python執行SQL、Excel常見任務?10個方法全搞定


你會注意到逗號分隔起來的括號的 key-value 列表。每個括號內的列表都代表了我們 dataframe 中的一行,每列都以 key 表示:我們正在處理一個國家的排名,人均 GDP(以美元表示)及其名稱(用「國家」)。

有關數據結構,如列表和詞典,如何在 Python 中的運行的更多信息,本篇將有所幫助。

幸運的是,為了將數據移動到 Pandas dataframe 中,我們不需要理解這些數據, 這是將數據聚合到 SQL 表或 Excel 電子表格的類似方式。 使用一行代碼,我們已經將這些數據分配並保存到 Pandas dataframe 中 —— 事實證明是這種情況,字典是要轉換為 dataframe 的完美數據格式。

通過這個簡單的 Python 賦值給變量 gdp,我們現在有了一個 dataframe,可以在我們編寫 gdp 的時候打開和瀏覽。我們可以為該詞添加 Python 方法, 以創建其中的數據的策略視圖。 作為我們剛剛在 Python 中使用等號和賦值的一點深入瞭解,很有幫助。

03

快速查看數據

現在,如果要快速查看我們所做的工作,我們可以使用 head() 方法,它與 Excel 中的選擇幾行或SQL中的 LIMIT 方法非常相似。輕鬆地使用它來快速查看數據集,而無需加載整個數據集!如果要查看特定數量的行,還可以在 head() 方法中插入行數。


用Python執行SQL、Excel常見任務?10個方法全搞定


我們得到的輸出是人均 GDP 數據集的前五行(head 方法的默認值),我們可以看到它們整齊地排列成三列以及索引列。請注意, Python 索引從0開始,而不是1 ,這樣,如果要調用 dataframe 中的第一個值,則使用0而不是1!你可以通過在圓括號內添加你選擇的數字來更改顯示的行數。試試看!

04

重命名列

有一件你在 Python 中很快意識到的事是,具有某些特殊字符(例如$)的名稱處理可能變得非常麻煩。我們將要 重命名某些列 ,在 Excel 中,可以通過單擊列名稱並鍵入新名稱,在SQL中,你可以執行 ALTER TABLE 語句或使用 SQL Server 中的 sp_rename。

在 Pandas 中,這樣做的方式是rename 方法。

在實現上述方法時,我們將使用列標題 「gdp_per_capita」 替換列標題「US $」 。一個快速的 .head() 方法調用確認已經更改。


用Python執行SQL、Excel常見任務?10個方法全搞定


05

刪除列

有一些數據損壞!如果你查看 Rank 列,你會注意到散亂的隨機破折號。這不是很好,由於實際的數字順序被破壞,這使得 Rank 列無用,特別是使用 Pandas 默認提供的編號索引。

幸運的是,使用內置的 Python 方法: del ,刪除列變得很容易。

現在,通過另外調用 head 方法,我們可以確認 dataframe 不再包含 rank 列。


用Python執行SQL、Excel常見任務?10個方法全搞定


06

在列中轉換數據類型

有時,給定的數據類型很難使用。這個方便的教程將分解 Python 中不同數據類型之間的差異,以便你需要複習。

在 Excel 中,你可以右鍵單擊並找到將列數據轉換為不同類型的數據的方法。你可以複製一組由公式呈現的單元格,並將其粘貼為值,你可以使用格式選項快速切換數字,日期和字符串。

有時候,在 Python 中切換一種數據類型為其他數據類型並不容易,但當然有可能。

我們首先在 Python 中使用 re 庫。我們將使用 正則表達式來替換 gdp_per_capita 列中的逗號 ,以便我們可以更容易地使用該列。

re.sub 方法本質上是使用空格替換逗號。以下詳細介紹了 re庫 的各個方法。

現在我們已經刪除了逗號,我們可以輕易地將列轉換為數字。

現在我們可以計算這列的平均值。


用Python執行SQL、Excel常見任務?10個方法全搞定


我們可以看到,人均 GDP 的平均值約為13037.27美元,如果這列被判斷為字符串(不能執行算術運算),我們就無法做到這一點。現在,可以對我們以前不能做的人均 GDP 列進行各種計算,包括通過不同的值過濾列,並確定列的百分位數值。

07

選擇/過濾數據

任何數據分析師的基本需求是 將大型數據集分割成有價值的結果。 為了做到這一點,你必須檢查一部分數據:這對選擇和過濾數據是非常有幫助的。在 SQL 中,這是通過混合使用 SELECT 和不同的其他函數實現的,而在 Excel 中,可以通過拖放數據和執行過濾器來實現。

你可以使用 Pandas 庫不同的方法或查詢快速過濾。

作為一個快速的代表,只顯示人均 GDP 高於 5 萬美元的國家。

這是這樣做到的:

我們為一個新的 dataframe 分配一個布爾索引的過濾器,這個方法基本上就是說「創建一個人均 GDP 超過 50000 的新 dataframe」。現在我們可以顯示gdp50000。


"

數據從業者有許多工具可用於分割數據。有些人使用 Excel,有些人使用SQL,有些人使用Python。對於某些任務,使用 Python 的優點是顯而易見的。以更快的速度處理更大的數據集。使用基於 Python 構建的開源機器學習庫。你可以輕鬆導入和導出不同格式的數據。

由於其多功能性,Python 可以成為任何數據分析師工具箱的重要組成部分。但是,這很難開始。大多數數據分析師可能熟悉 SQL 或 Excel。本篇是涉及幫助你 將技能和技術從 EXcel 和 SQL 轉移到 Python。

首先,讓我們來設置 Python。最簡單的方法就是使用 Jupyter Notebook 和 Anaconda。這個可視化界面將允許你插入 Python 代碼並立即查看輸出。這也將使你輕鬆跟隨本教程的其餘部分。

我強烈推薦使用 Anaconda,但這個初學者指南也將幫助你安裝 Python——儘管這將使本篇文章更加難以接受。

我們從基礎開始: 打開一個數據集。

01

Python資源共享群:484031800

導入數據

你可以導入.sql 數據庫並用 SQL 查詢中處理它們。在Excel中,你可以雙擊一個文件,然後在電子表格模式下開始處理它。在 Python 中,有更多複雜的特性,得益於能夠處理許多不同類型的文件格式和數據源的。

使用一個數據處理庫 Pandas,你可以使用 read 方法導入各種文件格式。使用這個方法所能導入完整的文件格式清單是在 Pandas 文檔中。你可以導入從 CSV 和 Excel 文件到 HTML 文件中的所有內容!

使用 Python 的最大優點之一是能夠從網絡的巨大範圍中獲取數據的能力,而不是隻能訪問手動下載的文件。在 Python 的requests 庫可以幫助你分類不同的網站,並從它們獲取數據,而 BeautifulSoup 庫可以幫助你處理和過濾數據,那麼你將精確得到你所需要的。如果你要去這條路線,請小心使用權問題。

在這個例子中,我們將獲取許多國家人均 GDP(一個技術術語,意思是一個國家的人均收入)的維基百科表格, 並在 Python 中使用 Pandas 庫對數據進行排序。

首先,導入我們需要的庫。


用Python執行SQL、Excel常見任務?10個方法全搞定


需要 Pandas 庫處理我們的數據。需要 numpy 庫來執行數值的操作和轉換。我們需要 requests 庫來從網站獲取 HTML 數據。需要 BeautifulSoup 來處理這些數據。最後,需要 Python(re)的正則表達式庫來更改在處理數據時將出現的某些字符串。

在 Python 中,不需要知道很多關於正則表達式的知識,但它們是一個強大的工具, 可用於匹配和替換某些字符串或子字符串。 如果你想了解更多,請參考以下內容。


用Python執行SQL、Excel常見任務?10個方法全搞定


02

信任這個網站的一些代碼

這是一個更具技術性的解釋,詳細說明如何使用 Python 代碼來獲取 HTML 表格。

你可以將上面的代碼複製粘貼到你自己的 Anaconda 中,如果你用一些 Python 代碼運行,可以迭代它!

下面是代碼的輸出,如果你不修改它,就是所謂的字典。


用Python執行SQL、Excel常見任務?10個方法全搞定


你會注意到逗號分隔起來的括號的 key-value 列表。每個括號內的列表都代表了我們 dataframe 中的一行,每列都以 key 表示:我們正在處理一個國家的排名,人均 GDP(以美元表示)及其名稱(用「國家」)。

有關數據結構,如列表和詞典,如何在 Python 中的運行的更多信息,本篇將有所幫助。

幸運的是,為了將數據移動到 Pandas dataframe 中,我們不需要理解這些數據, 這是將數據聚合到 SQL 表或 Excel 電子表格的類似方式。 使用一行代碼,我們已經將這些數據分配並保存到 Pandas dataframe 中 —— 事實證明是這種情況,字典是要轉換為 dataframe 的完美數據格式。

通過這個簡單的 Python 賦值給變量 gdp,我們現在有了一個 dataframe,可以在我們編寫 gdp 的時候打開和瀏覽。我們可以為該詞添加 Python 方法, 以創建其中的數據的策略視圖。 作為我們剛剛在 Python 中使用等號和賦值的一點深入瞭解,很有幫助。

03

快速查看數據

現在,如果要快速查看我們所做的工作,我們可以使用 head() 方法,它與 Excel 中的選擇幾行或SQL中的 LIMIT 方法非常相似。輕鬆地使用它來快速查看數據集,而無需加載整個數據集!如果要查看特定數量的行,還可以在 head() 方法中插入行數。


用Python執行SQL、Excel常見任務?10個方法全搞定


我們得到的輸出是人均 GDP 數據集的前五行(head 方法的默認值),我們可以看到它們整齊地排列成三列以及索引列。請注意, Python 索引從0開始,而不是1 ,這樣,如果要調用 dataframe 中的第一個值,則使用0而不是1!你可以通過在圓括號內添加你選擇的數字來更改顯示的行數。試試看!

04

重命名列

有一件你在 Python 中很快意識到的事是,具有某些特殊字符(例如$)的名稱處理可能變得非常麻煩。我們將要 重命名某些列 ,在 Excel 中,可以通過單擊列名稱並鍵入新名稱,在SQL中,你可以執行 ALTER TABLE 語句或使用 SQL Server 中的 sp_rename。

在 Pandas 中,這樣做的方式是rename 方法。

在實現上述方法時,我們將使用列標題 「gdp_per_capita」 替換列標題「US $」 。一個快速的 .head() 方法調用確認已經更改。


用Python執行SQL、Excel常見任務?10個方法全搞定


05

刪除列

有一些數據損壞!如果你查看 Rank 列,你會注意到散亂的隨機破折號。這不是很好,由於實際的數字順序被破壞,這使得 Rank 列無用,特別是使用 Pandas 默認提供的編號索引。

幸運的是,使用內置的 Python 方法: del ,刪除列變得很容易。

現在,通過另外調用 head 方法,我們可以確認 dataframe 不再包含 rank 列。


用Python執行SQL、Excel常見任務?10個方法全搞定


06

在列中轉換數據類型

有時,給定的數據類型很難使用。這個方便的教程將分解 Python 中不同數據類型之間的差異,以便你需要複習。

在 Excel 中,你可以右鍵單擊並找到將列數據轉換為不同類型的數據的方法。你可以複製一組由公式呈現的單元格,並將其粘貼為值,你可以使用格式選項快速切換數字,日期和字符串。

有時候,在 Python 中切換一種數據類型為其他數據類型並不容易,但當然有可能。

我們首先在 Python 中使用 re 庫。我們將使用 正則表達式來替換 gdp_per_capita 列中的逗號 ,以便我們可以更容易地使用該列。

re.sub 方法本質上是使用空格替換逗號。以下詳細介紹了 re庫 的各個方法。

現在我們已經刪除了逗號,我們可以輕易地將列轉換為數字。

現在我們可以計算這列的平均值。


用Python執行SQL、Excel常見任務?10個方法全搞定


我們可以看到,人均 GDP 的平均值約為13037.27美元,如果這列被判斷為字符串(不能執行算術運算),我們就無法做到這一點。現在,可以對我們以前不能做的人均 GDP 列進行各種計算,包括通過不同的值過濾列,並確定列的百分位數值。

07

選擇/過濾數據

任何數據分析師的基本需求是 將大型數據集分割成有價值的結果。 為了做到這一點,你必須檢查一部分數據:這對選擇和過濾數據是非常有幫助的。在 SQL 中,這是通過混合使用 SELECT 和不同的其他函數實現的,而在 Excel 中,可以通過拖放數據和執行過濾器來實現。

你可以使用 Pandas 庫不同的方法或查詢快速過濾。

作為一個快速的代表,只顯示人均 GDP 高於 5 萬美元的國家。

這是這樣做到的:

我們為一個新的 dataframe 分配一個布爾索引的過濾器,這個方法基本上就是說「創建一個人均 GDP 超過 50000 的新 dataframe」。現在我們可以顯示gdp50000。


用Python執行SQL、Excel常見任務?10個方法全搞定


有12個國家的 GDP 超過 50000!

選擇屬於以 s 開頭的國家的行。

現在可以顯示一個新 dataframe,其中只包含以 s 開頭的國家。使用 len 方法快速檢查(一個用於計算 dataframe 中的行數的救星!)表示我們有 25 個國家符合。


"

數據從業者有許多工具可用於分割數據。有些人使用 Excel,有些人使用SQL,有些人使用Python。對於某些任務,使用 Python 的優點是顯而易見的。以更快的速度處理更大的數據集。使用基於 Python 構建的開源機器學習庫。你可以輕鬆導入和導出不同格式的數據。

由於其多功能性,Python 可以成為任何數據分析師工具箱的重要組成部分。但是,這很難開始。大多數數據分析師可能熟悉 SQL 或 Excel。本篇是涉及幫助你 將技能和技術從 EXcel 和 SQL 轉移到 Python。

首先,讓我們來設置 Python。最簡單的方法就是使用 Jupyter Notebook 和 Anaconda。這個可視化界面將允許你插入 Python 代碼並立即查看輸出。這也將使你輕鬆跟隨本教程的其餘部分。

我強烈推薦使用 Anaconda,但這個初學者指南也將幫助你安裝 Python——儘管這將使本篇文章更加難以接受。

我們從基礎開始: 打開一個數據集。

01

Python資源共享群:484031800

導入數據

你可以導入.sql 數據庫並用 SQL 查詢中處理它們。在Excel中,你可以雙擊一個文件,然後在電子表格模式下開始處理它。在 Python 中,有更多複雜的特性,得益於能夠處理許多不同類型的文件格式和數據源的。

使用一個數據處理庫 Pandas,你可以使用 read 方法導入各種文件格式。使用這個方法所能導入完整的文件格式清單是在 Pandas 文檔中。你可以導入從 CSV 和 Excel 文件到 HTML 文件中的所有內容!

使用 Python 的最大優點之一是能夠從網絡的巨大範圍中獲取數據的能力,而不是隻能訪問手動下載的文件。在 Python 的requests 庫可以幫助你分類不同的網站,並從它們獲取數據,而 BeautifulSoup 庫可以幫助你處理和過濾數據,那麼你將精確得到你所需要的。如果你要去這條路線,請小心使用權問題。

在這個例子中,我們將獲取許多國家人均 GDP(一個技術術語,意思是一個國家的人均收入)的維基百科表格, 並在 Python 中使用 Pandas 庫對數據進行排序。

首先,導入我們需要的庫。


用Python執行SQL、Excel常見任務?10個方法全搞定


需要 Pandas 庫處理我們的數據。需要 numpy 庫來執行數值的操作和轉換。我們需要 requests 庫來從網站獲取 HTML 數據。需要 BeautifulSoup 來處理這些數據。最後,需要 Python(re)的正則表達式庫來更改在處理數據時將出現的某些字符串。

在 Python 中,不需要知道很多關於正則表達式的知識,但它們是一個強大的工具, 可用於匹配和替換某些字符串或子字符串。 如果你想了解更多,請參考以下內容。


用Python執行SQL、Excel常見任務?10個方法全搞定


02

信任這個網站的一些代碼

這是一個更具技術性的解釋,詳細說明如何使用 Python 代碼來獲取 HTML 表格。

你可以將上面的代碼複製粘貼到你自己的 Anaconda 中,如果你用一些 Python 代碼運行,可以迭代它!

下面是代碼的輸出,如果你不修改它,就是所謂的字典。


用Python執行SQL、Excel常見任務?10個方法全搞定


你會注意到逗號分隔起來的括號的 key-value 列表。每個括號內的列表都代表了我們 dataframe 中的一行,每列都以 key 表示:我們正在處理一個國家的排名,人均 GDP(以美元表示)及其名稱(用「國家」)。

有關數據結構,如列表和詞典,如何在 Python 中的運行的更多信息,本篇將有所幫助。

幸運的是,為了將數據移動到 Pandas dataframe 中,我們不需要理解這些數據, 這是將數據聚合到 SQL 表或 Excel 電子表格的類似方式。 使用一行代碼,我們已經將這些數據分配並保存到 Pandas dataframe 中 —— 事實證明是這種情況,字典是要轉換為 dataframe 的完美數據格式。

通過這個簡單的 Python 賦值給變量 gdp,我們現在有了一個 dataframe,可以在我們編寫 gdp 的時候打開和瀏覽。我們可以為該詞添加 Python 方法, 以創建其中的數據的策略視圖。 作為我們剛剛在 Python 中使用等號和賦值的一點深入瞭解,很有幫助。

03

快速查看數據

現在,如果要快速查看我們所做的工作,我們可以使用 head() 方法,它與 Excel 中的選擇幾行或SQL中的 LIMIT 方法非常相似。輕鬆地使用它來快速查看數據集,而無需加載整個數據集!如果要查看特定數量的行,還可以在 head() 方法中插入行數。


用Python執行SQL、Excel常見任務?10個方法全搞定


我們得到的輸出是人均 GDP 數據集的前五行(head 方法的默認值),我們可以看到它們整齊地排列成三列以及索引列。請注意, Python 索引從0開始,而不是1 ,這樣,如果要調用 dataframe 中的第一個值,則使用0而不是1!你可以通過在圓括號內添加你選擇的數字來更改顯示的行數。試試看!

04

重命名列

有一件你在 Python 中很快意識到的事是,具有某些特殊字符(例如$)的名稱處理可能變得非常麻煩。我們將要 重命名某些列 ,在 Excel 中,可以通過單擊列名稱並鍵入新名稱,在SQL中,你可以執行 ALTER TABLE 語句或使用 SQL Server 中的 sp_rename。

在 Pandas 中,這樣做的方式是rename 方法。

在實現上述方法時,我們將使用列標題 「gdp_per_capita」 替換列標題「US $」 。一個快速的 .head() 方法調用確認已經更改。


用Python執行SQL、Excel常見任務?10個方法全搞定


05

刪除列

有一些數據損壞!如果你查看 Rank 列,你會注意到散亂的隨機破折號。這不是很好,由於實際的數字順序被破壞,這使得 Rank 列無用,特別是使用 Pandas 默認提供的編號索引。

幸運的是,使用內置的 Python 方法: del ,刪除列變得很容易。

現在,通過另外調用 head 方法,我們可以確認 dataframe 不再包含 rank 列。


用Python執行SQL、Excel常見任務?10個方法全搞定


06

在列中轉換數據類型

有時,給定的數據類型很難使用。這個方便的教程將分解 Python 中不同數據類型之間的差異,以便你需要複習。

在 Excel 中,你可以右鍵單擊並找到將列數據轉換為不同類型的數據的方法。你可以複製一組由公式呈現的單元格,並將其粘貼為值,你可以使用格式選項快速切換數字,日期和字符串。

有時候,在 Python 中切換一種數據類型為其他數據類型並不容易,但當然有可能。

我們首先在 Python 中使用 re 庫。我們將使用 正則表達式來替換 gdp_per_capita 列中的逗號 ,以便我們可以更容易地使用該列。

re.sub 方法本質上是使用空格替換逗號。以下詳細介紹了 re庫 的各個方法。

現在我們已經刪除了逗號,我們可以輕易地將列轉換為數字。

現在我們可以計算這列的平均值。


用Python執行SQL、Excel常見任務?10個方法全搞定


我們可以看到,人均 GDP 的平均值約為13037.27美元,如果這列被判斷為字符串(不能執行算術運算),我們就無法做到這一點。現在,可以對我們以前不能做的人均 GDP 列進行各種計算,包括通過不同的值過濾列,並確定列的百分位數值。

07

選擇/過濾數據

任何數據分析師的基本需求是 將大型數據集分割成有價值的結果。 為了做到這一點,你必須檢查一部分數據:這對選擇和過濾數據是非常有幫助的。在 SQL 中,這是通過混合使用 SELECT 和不同的其他函數實現的,而在 Excel 中,可以通過拖放數據和執行過濾器來實現。

你可以使用 Pandas 庫不同的方法或查詢快速過濾。

作為一個快速的代表,只顯示人均 GDP 高於 5 萬美元的國家。

這是這樣做到的:

我們為一個新的 dataframe 分配一個布爾索引的過濾器,這個方法基本上就是說「創建一個人均 GDP 超過 50000 的新 dataframe」。現在我們可以顯示gdp50000。


用Python執行SQL、Excel常見任務?10個方法全搞定


有12個國家的 GDP 超過 50000!

選擇屬於以 s 開頭的國家的行。

現在可以顯示一個新 dataframe,其中只包含以 s 開頭的國家。使用 len 方法快速檢查(一個用於計算 dataframe 中的行數的救星!)表示我們有 25 個國家符合。


用Python執行SQL、Excel常見任務?10個方法全搞定


要是我們想把這兩個過濾條件連在一起呢?

這裡是連接過濾的方法。在多個過濾條件之前,你想要了解它的工作原理。你還需要了解 Python 中的基本操作符。為了這個練習的目的,你只需要知道 「&」代表 AND,而「|」代表 Python 中的 OR。 然而,通過更深入地瞭解所有基礎運算符,你可以用各種條件輕鬆地處理的數據。

讓我們繼續工作,並在過濾選擇以「S」開頭且有大於 50,000 人均 GDP 的國家。

"

數據從業者有許多工具可用於分割數據。有些人使用 Excel,有些人使用SQL,有些人使用Python。對於某些任務,使用 Python 的優點是顯而易見的。以更快的速度處理更大的數據集。使用基於 Python 構建的開源機器學習庫。你可以輕鬆導入和導出不同格式的數據。

由於其多功能性,Python 可以成為任何數據分析師工具箱的重要組成部分。但是,這很難開始。大多數數據分析師可能熟悉 SQL 或 Excel。本篇是涉及幫助你 將技能和技術從 EXcel 和 SQL 轉移到 Python。

首先,讓我們來設置 Python。最簡單的方法就是使用 Jupyter Notebook 和 Anaconda。這個可視化界面將允許你插入 Python 代碼並立即查看輸出。這也將使你輕鬆跟隨本教程的其餘部分。

我強烈推薦使用 Anaconda,但這個初學者指南也將幫助你安裝 Python——儘管這將使本篇文章更加難以接受。

我們從基礎開始: 打開一個數據集。

01

Python資源共享群:484031800

導入數據

你可以導入.sql 數據庫並用 SQL 查詢中處理它們。在Excel中,你可以雙擊一個文件,然後在電子表格模式下開始處理它。在 Python 中,有更多複雜的特性,得益於能夠處理許多不同類型的文件格式和數據源的。

使用一個數據處理庫 Pandas,你可以使用 read 方法導入各種文件格式。使用這個方法所能導入完整的文件格式清單是在 Pandas 文檔中。你可以導入從 CSV 和 Excel 文件到 HTML 文件中的所有內容!

使用 Python 的最大優點之一是能夠從網絡的巨大範圍中獲取數據的能力,而不是隻能訪問手動下載的文件。在 Python 的requests 庫可以幫助你分類不同的網站,並從它們獲取數據,而 BeautifulSoup 庫可以幫助你處理和過濾數據,那麼你將精確得到你所需要的。如果你要去這條路線,請小心使用權問題。

在這個例子中,我們將獲取許多國家人均 GDP(一個技術術語,意思是一個國家的人均收入)的維基百科表格, 並在 Python 中使用 Pandas 庫對數據進行排序。

首先,導入我們需要的庫。


用Python執行SQL、Excel常見任務?10個方法全搞定


需要 Pandas 庫處理我們的數據。需要 numpy 庫來執行數值的操作和轉換。我們需要 requests 庫來從網站獲取 HTML 數據。需要 BeautifulSoup 來處理這些數據。最後,需要 Python(re)的正則表達式庫來更改在處理數據時將出現的某些字符串。

在 Python 中,不需要知道很多關於正則表達式的知識,但它們是一個強大的工具, 可用於匹配和替換某些字符串或子字符串。 如果你想了解更多,請參考以下內容。


用Python執行SQL、Excel常見任務?10個方法全搞定


02

信任這個網站的一些代碼

這是一個更具技術性的解釋,詳細說明如何使用 Python 代碼來獲取 HTML 表格。

你可以將上面的代碼複製粘貼到你自己的 Anaconda 中,如果你用一些 Python 代碼運行,可以迭代它!

下面是代碼的輸出,如果你不修改它,就是所謂的字典。


用Python執行SQL、Excel常見任務?10個方法全搞定


你會注意到逗號分隔起來的括號的 key-value 列表。每個括號內的列表都代表了我們 dataframe 中的一行,每列都以 key 表示:我們正在處理一個國家的排名,人均 GDP(以美元表示)及其名稱(用「國家」)。

有關數據結構,如列表和詞典,如何在 Python 中的運行的更多信息,本篇將有所幫助。

幸運的是,為了將數據移動到 Pandas dataframe 中,我們不需要理解這些數據, 這是將數據聚合到 SQL 表或 Excel 電子表格的類似方式。 使用一行代碼,我們已經將這些數據分配並保存到 Pandas dataframe 中 —— 事實證明是這種情況,字典是要轉換為 dataframe 的完美數據格式。

通過這個簡單的 Python 賦值給變量 gdp,我們現在有了一個 dataframe,可以在我們編寫 gdp 的時候打開和瀏覽。我們可以為該詞添加 Python 方法, 以創建其中的數據的策略視圖。 作為我們剛剛在 Python 中使用等號和賦值的一點深入瞭解,很有幫助。

03

快速查看數據

現在,如果要快速查看我們所做的工作,我們可以使用 head() 方法,它與 Excel 中的選擇幾行或SQL中的 LIMIT 方法非常相似。輕鬆地使用它來快速查看數據集,而無需加載整個數據集!如果要查看特定數量的行,還可以在 head() 方法中插入行數。


用Python執行SQL、Excel常見任務?10個方法全搞定


我們得到的輸出是人均 GDP 數據集的前五行(head 方法的默認值),我們可以看到它們整齊地排列成三列以及索引列。請注意, Python 索引從0開始,而不是1 ,這樣,如果要調用 dataframe 中的第一個值,則使用0而不是1!你可以通過在圓括號內添加你選擇的數字來更改顯示的行數。試試看!

04

重命名列

有一件你在 Python 中很快意識到的事是,具有某些特殊字符(例如$)的名稱處理可能變得非常麻煩。我們將要 重命名某些列 ,在 Excel 中,可以通過單擊列名稱並鍵入新名稱,在SQL中,你可以執行 ALTER TABLE 語句或使用 SQL Server 中的 sp_rename。

在 Pandas 中,這樣做的方式是rename 方法。

在實現上述方法時,我們將使用列標題 「gdp_per_capita」 替換列標題「US $」 。一個快速的 .head() 方法調用確認已經更改。


用Python執行SQL、Excel常見任務?10個方法全搞定


05

刪除列

有一些數據損壞!如果你查看 Rank 列,你會注意到散亂的隨機破折號。這不是很好,由於實際的數字順序被破壞,這使得 Rank 列無用,特別是使用 Pandas 默認提供的編號索引。

幸運的是,使用內置的 Python 方法: del ,刪除列變得很容易。

現在,通過另外調用 head 方法,我們可以確認 dataframe 不再包含 rank 列。


用Python執行SQL、Excel常見任務?10個方法全搞定


06

在列中轉換數據類型

有時,給定的數據類型很難使用。這個方便的教程將分解 Python 中不同數據類型之間的差異,以便你需要複習。

在 Excel 中,你可以右鍵單擊並找到將列數據轉換為不同類型的數據的方法。你可以複製一組由公式呈現的單元格,並將其粘貼為值,你可以使用格式選項快速切換數字,日期和字符串。

有時候,在 Python 中切換一種數據類型為其他數據類型並不容易,但當然有可能。

我們首先在 Python 中使用 re 庫。我們將使用 正則表達式來替換 gdp_per_capita 列中的逗號 ,以便我們可以更容易地使用該列。

re.sub 方法本質上是使用空格替換逗號。以下詳細介紹了 re庫 的各個方法。

現在我們已經刪除了逗號,我們可以輕易地將列轉換為數字。

現在我們可以計算這列的平均值。


用Python執行SQL、Excel常見任務?10個方法全搞定


我們可以看到,人均 GDP 的平均值約為13037.27美元,如果這列被判斷為字符串(不能執行算術運算),我們就無法做到這一點。現在,可以對我們以前不能做的人均 GDP 列進行各種計算,包括通過不同的值過濾列,並確定列的百分位數值。

07

選擇/過濾數據

任何數據分析師的基本需求是 將大型數據集分割成有價值的結果。 為了做到這一點,你必須檢查一部分數據:這對選擇和過濾數據是非常有幫助的。在 SQL 中,這是通過混合使用 SELECT 和不同的其他函數實現的,而在 Excel 中,可以通過拖放數據和執行過濾器來實現。

你可以使用 Pandas 庫不同的方法或查詢快速過濾。

作為一個快速的代表,只顯示人均 GDP 高於 5 萬美元的國家。

這是這樣做到的:

我們為一個新的 dataframe 分配一個布爾索引的過濾器,這個方法基本上就是說「創建一個人均 GDP 超過 50000 的新 dataframe」。現在我們可以顯示gdp50000。


用Python執行SQL、Excel常見任務?10個方法全搞定


有12個國家的 GDP 超過 50000!

選擇屬於以 s 開頭的國家的行。

現在可以顯示一個新 dataframe,其中只包含以 s 開頭的國家。使用 len 方法快速檢查(一個用於計算 dataframe 中的行數的救星!)表示我們有 25 個國家符合。


用Python執行SQL、Excel常見任務?10個方法全搞定


要是我們想把這兩個過濾條件連在一起呢?

這裡是連接過濾的方法。在多個過濾條件之前,你想要了解它的工作原理。你還需要了解 Python 中的基本操作符。為了這個練習的目的,你只需要知道 「&」代表 AND,而「|」代表 Python 中的 OR。 然而,通過更深入地瞭解所有基礎運算符,你可以用各種條件輕鬆地處理的數據。

讓我們繼續工作,並在過濾選擇以「S」開頭且有大於 50,000 人均 GDP 的國家。

用Python執行SQL、Excel常見任務?10個方法全搞定

現在過濾以「S」開頭 或人均 GDP 超過 50000 的國家。


"

數據從業者有許多工具可用於分割數據。有些人使用 Excel,有些人使用SQL,有些人使用Python。對於某些任務,使用 Python 的優點是顯而易見的。以更快的速度處理更大的數據集。使用基於 Python 構建的開源機器學習庫。你可以輕鬆導入和導出不同格式的數據。

由於其多功能性,Python 可以成為任何數據分析師工具箱的重要組成部分。但是,這很難開始。大多數數據分析師可能熟悉 SQL 或 Excel。本篇是涉及幫助你 將技能和技術從 EXcel 和 SQL 轉移到 Python。

首先,讓我們來設置 Python。最簡單的方法就是使用 Jupyter Notebook 和 Anaconda。這個可視化界面將允許你插入 Python 代碼並立即查看輸出。這也將使你輕鬆跟隨本教程的其餘部分。

我強烈推薦使用 Anaconda,但這個初學者指南也將幫助你安裝 Python——儘管這將使本篇文章更加難以接受。

我們從基礎開始: 打開一個數據集。

01

Python資源共享群:484031800

導入數據

你可以導入.sql 數據庫並用 SQL 查詢中處理它們。在Excel中,你可以雙擊一個文件,然後在電子表格模式下開始處理它。在 Python 中,有更多複雜的特性,得益於能夠處理許多不同類型的文件格式和數據源的。

使用一個數據處理庫 Pandas,你可以使用 read 方法導入各種文件格式。使用這個方法所能導入完整的文件格式清單是在 Pandas 文檔中。你可以導入從 CSV 和 Excel 文件到 HTML 文件中的所有內容!

使用 Python 的最大優點之一是能夠從網絡的巨大範圍中獲取數據的能力,而不是隻能訪問手動下載的文件。在 Python 的requests 庫可以幫助你分類不同的網站,並從它們獲取數據,而 BeautifulSoup 庫可以幫助你處理和過濾數據,那麼你將精確得到你所需要的。如果你要去這條路線,請小心使用權問題。

在這個例子中,我們將獲取許多國家人均 GDP(一個技術術語,意思是一個國家的人均收入)的維基百科表格, 並在 Python 中使用 Pandas 庫對數據進行排序。

首先,導入我們需要的庫。


用Python執行SQL、Excel常見任務?10個方法全搞定


需要 Pandas 庫處理我們的數據。需要 numpy 庫來執行數值的操作和轉換。我們需要 requests 庫來從網站獲取 HTML 數據。需要 BeautifulSoup 來處理這些數據。最後,需要 Python(re)的正則表達式庫來更改在處理數據時將出現的某些字符串。

在 Python 中,不需要知道很多關於正則表達式的知識,但它們是一個強大的工具, 可用於匹配和替換某些字符串或子字符串。 如果你想了解更多,請參考以下內容。


用Python執行SQL、Excel常見任務?10個方法全搞定


02

信任這個網站的一些代碼

這是一個更具技術性的解釋,詳細說明如何使用 Python 代碼來獲取 HTML 表格。

你可以將上面的代碼複製粘貼到你自己的 Anaconda 中,如果你用一些 Python 代碼運行,可以迭代它!

下面是代碼的輸出,如果你不修改它,就是所謂的字典。


用Python執行SQL、Excel常見任務?10個方法全搞定


你會注意到逗號分隔起來的括號的 key-value 列表。每個括號內的列表都代表了我們 dataframe 中的一行,每列都以 key 表示:我們正在處理一個國家的排名,人均 GDP(以美元表示)及其名稱(用「國家」)。

有關數據結構,如列表和詞典,如何在 Python 中的運行的更多信息,本篇將有所幫助。

幸運的是,為了將數據移動到 Pandas dataframe 中,我們不需要理解這些數據, 這是將數據聚合到 SQL 表或 Excel 電子表格的類似方式。 使用一行代碼,我們已經將這些數據分配並保存到 Pandas dataframe 中 —— 事實證明是這種情況,字典是要轉換為 dataframe 的完美數據格式。

通過這個簡單的 Python 賦值給變量 gdp,我們現在有了一個 dataframe,可以在我們編寫 gdp 的時候打開和瀏覽。我們可以為該詞添加 Python 方法, 以創建其中的數據的策略視圖。 作為我們剛剛在 Python 中使用等號和賦值的一點深入瞭解,很有幫助。

03

快速查看數據

現在,如果要快速查看我們所做的工作,我們可以使用 head() 方法,它與 Excel 中的選擇幾行或SQL中的 LIMIT 方法非常相似。輕鬆地使用它來快速查看數據集,而無需加載整個數據集!如果要查看特定數量的行,還可以在 head() 方法中插入行數。


用Python執行SQL、Excel常見任務?10個方法全搞定


我們得到的輸出是人均 GDP 數據集的前五行(head 方法的默認值),我們可以看到它們整齊地排列成三列以及索引列。請注意, Python 索引從0開始,而不是1 ,這樣,如果要調用 dataframe 中的第一個值,則使用0而不是1!你可以通過在圓括號內添加你選擇的數字來更改顯示的行數。試試看!

04

重命名列

有一件你在 Python 中很快意識到的事是,具有某些特殊字符(例如$)的名稱處理可能變得非常麻煩。我們將要 重命名某些列 ,在 Excel 中,可以通過單擊列名稱並鍵入新名稱,在SQL中,你可以執行 ALTER TABLE 語句或使用 SQL Server 中的 sp_rename。

在 Pandas 中,這樣做的方式是rename 方法。

在實現上述方法時,我們將使用列標題 「gdp_per_capita」 替換列標題「US $」 。一個快速的 .head() 方法調用確認已經更改。


用Python執行SQL、Excel常見任務?10個方法全搞定


05

刪除列

有一些數據損壞!如果你查看 Rank 列,你會注意到散亂的隨機破折號。這不是很好,由於實際的數字順序被破壞,這使得 Rank 列無用,特別是使用 Pandas 默認提供的編號索引。

幸運的是,使用內置的 Python 方法: del ,刪除列變得很容易。

現在,通過另外調用 head 方法,我們可以確認 dataframe 不再包含 rank 列。


用Python執行SQL、Excel常見任務?10個方法全搞定


06

在列中轉換數據類型

有時,給定的數據類型很難使用。這個方便的教程將分解 Python 中不同數據類型之間的差異,以便你需要複習。

在 Excel 中,你可以右鍵單擊並找到將列數據轉換為不同類型的數據的方法。你可以複製一組由公式呈現的單元格,並將其粘貼為值,你可以使用格式選項快速切換數字,日期和字符串。

有時候,在 Python 中切換一種數據類型為其他數據類型並不容易,但當然有可能。

我們首先在 Python 中使用 re 庫。我們將使用 正則表達式來替換 gdp_per_capita 列中的逗號 ,以便我們可以更容易地使用該列。

re.sub 方法本質上是使用空格替換逗號。以下詳細介紹了 re庫 的各個方法。

現在我們已經刪除了逗號,我們可以輕易地將列轉換為數字。

現在我們可以計算這列的平均值。


用Python執行SQL、Excel常見任務?10個方法全搞定


我們可以看到,人均 GDP 的平均值約為13037.27美元,如果這列被判斷為字符串(不能執行算術運算),我們就無法做到這一點。現在,可以對我們以前不能做的人均 GDP 列進行各種計算,包括通過不同的值過濾列,並確定列的百分位數值。

07

選擇/過濾數據

任何數據分析師的基本需求是 將大型數據集分割成有價值的結果。 為了做到這一點,你必須檢查一部分數據:這對選擇和過濾數據是非常有幫助的。在 SQL 中,這是通過混合使用 SELECT 和不同的其他函數實現的,而在 Excel 中,可以通過拖放數據和執行過濾器來實現。

你可以使用 Pandas 庫不同的方法或查詢快速過濾。

作為一個快速的代表,只顯示人均 GDP 高於 5 萬美元的國家。

這是這樣做到的:

我們為一個新的 dataframe 分配一個布爾索引的過濾器,這個方法基本上就是說「創建一個人均 GDP 超過 50000 的新 dataframe」。現在我們可以顯示gdp50000。


用Python執行SQL、Excel常見任務?10個方法全搞定


有12個國家的 GDP 超過 50000!

選擇屬於以 s 開頭的國家的行。

現在可以顯示一個新 dataframe,其中只包含以 s 開頭的國家。使用 len 方法快速檢查(一個用於計算 dataframe 中的行數的救星!)表示我們有 25 個國家符合。


用Python執行SQL、Excel常見任務?10個方法全搞定


要是我們想把這兩個過濾條件連在一起呢?

這裡是連接過濾的方法。在多個過濾條件之前,你想要了解它的工作原理。你還需要了解 Python 中的基本操作符。為了這個練習的目的,你只需要知道 「&」代表 AND,而「|」代表 Python 中的 OR。 然而,通過更深入地瞭解所有基礎運算符,你可以用各種條件輕鬆地處理的數據。

讓我們繼續工作,並在過濾選擇以「S」開頭且有大於 50,000 人均 GDP 的國家。

用Python執行SQL、Excel常見任務?10個方法全搞定

現在過濾以「S」開頭 或人均 GDP 超過 50000 的國家。


用Python執行SQL、Excel常見任務?10個方法全搞定


我們正在努力處理 Pandas 中的過濾視圖。

用計算機來處理數據

沒有可以幫助計算不同的結果的方法,那麼 Excel 會變成什麼?

在這種情況下,Pandas 大量依賴於 numpy 庫和通用 Python 語法將計算放在一起。對我們一直在研究的 GDP 數據集進行一系列簡單的計算。例如,計算人均國民生產總值超過 5 萬的總和。

"

數據從業者有許多工具可用於分割數據。有些人使用 Excel,有些人使用SQL,有些人使用Python。對於某些任務,使用 Python 的優點是顯而易見的。以更快的速度處理更大的數據集。使用基於 Python 構建的開源機器學習庫。你可以輕鬆導入和導出不同格式的數據。

由於其多功能性,Python 可以成為任何數據分析師工具箱的重要組成部分。但是,這很難開始。大多數數據分析師可能熟悉 SQL 或 Excel。本篇是涉及幫助你 將技能和技術從 EXcel 和 SQL 轉移到 Python。

首先,讓我們來設置 Python。最簡單的方法就是使用 Jupyter Notebook 和 Anaconda。這個可視化界面將允許你插入 Python 代碼並立即查看輸出。這也將使你輕鬆跟隨本教程的其餘部分。

我強烈推薦使用 Anaconda,但這個初學者指南也將幫助你安裝 Python——儘管這將使本篇文章更加難以接受。

我們從基礎開始: 打開一個數據集。

01

Python資源共享群:484031800

導入數據

你可以導入.sql 數據庫並用 SQL 查詢中處理它們。在Excel中,你可以雙擊一個文件,然後在電子表格模式下開始處理它。在 Python 中,有更多複雜的特性,得益於能夠處理許多不同類型的文件格式和數據源的。

使用一個數據處理庫 Pandas,你可以使用 read 方法導入各種文件格式。使用這個方法所能導入完整的文件格式清單是在 Pandas 文檔中。你可以導入從 CSV 和 Excel 文件到 HTML 文件中的所有內容!

使用 Python 的最大優點之一是能夠從網絡的巨大範圍中獲取數據的能力,而不是隻能訪問手動下載的文件。在 Python 的requests 庫可以幫助你分類不同的網站,並從它們獲取數據,而 BeautifulSoup 庫可以幫助你處理和過濾數據,那麼你將精確得到你所需要的。如果你要去這條路線,請小心使用權問題。

在這個例子中,我們將獲取許多國家人均 GDP(一個技術術語,意思是一個國家的人均收入)的維基百科表格, 並在 Python 中使用 Pandas 庫對數據進行排序。

首先,導入我們需要的庫。


用Python執行SQL、Excel常見任務?10個方法全搞定


需要 Pandas 庫處理我們的數據。需要 numpy 庫來執行數值的操作和轉換。我們需要 requests 庫來從網站獲取 HTML 數據。需要 BeautifulSoup 來處理這些數據。最後,需要 Python(re)的正則表達式庫來更改在處理數據時將出現的某些字符串。

在 Python 中,不需要知道很多關於正則表達式的知識,但它們是一個強大的工具, 可用於匹配和替換某些字符串或子字符串。 如果你想了解更多,請參考以下內容。


用Python執行SQL、Excel常見任務?10個方法全搞定


02

信任這個網站的一些代碼

這是一個更具技術性的解釋,詳細說明如何使用 Python 代碼來獲取 HTML 表格。

你可以將上面的代碼複製粘貼到你自己的 Anaconda 中,如果你用一些 Python 代碼運行,可以迭代它!

下面是代碼的輸出,如果你不修改它,就是所謂的字典。


用Python執行SQL、Excel常見任務?10個方法全搞定


你會注意到逗號分隔起來的括號的 key-value 列表。每個括號內的列表都代表了我們 dataframe 中的一行,每列都以 key 表示:我們正在處理一個國家的排名,人均 GDP(以美元表示)及其名稱(用「國家」)。

有關數據結構,如列表和詞典,如何在 Python 中的運行的更多信息,本篇將有所幫助。

幸運的是,為了將數據移動到 Pandas dataframe 中,我們不需要理解這些數據, 這是將數據聚合到 SQL 表或 Excel 電子表格的類似方式。 使用一行代碼,我們已經將這些數據分配並保存到 Pandas dataframe 中 —— 事實證明是這種情況,字典是要轉換為 dataframe 的完美數據格式。

通過這個簡單的 Python 賦值給變量 gdp,我們現在有了一個 dataframe,可以在我們編寫 gdp 的時候打開和瀏覽。我們可以為該詞添加 Python 方法, 以創建其中的數據的策略視圖。 作為我們剛剛在 Python 中使用等號和賦值的一點深入瞭解,很有幫助。

03

快速查看數據

現在,如果要快速查看我們所做的工作,我們可以使用 head() 方法,它與 Excel 中的選擇幾行或SQL中的 LIMIT 方法非常相似。輕鬆地使用它來快速查看數據集,而無需加載整個數據集!如果要查看特定數量的行,還可以在 head() 方法中插入行數。


用Python執行SQL、Excel常見任務?10個方法全搞定


我們得到的輸出是人均 GDP 數據集的前五行(head 方法的默認值),我們可以看到它們整齊地排列成三列以及索引列。請注意, Python 索引從0開始,而不是1 ,這樣,如果要調用 dataframe 中的第一個值,則使用0而不是1!你可以通過在圓括號內添加你選擇的數字來更改顯示的行數。試試看!

04

重命名列

有一件你在 Python 中很快意識到的事是,具有某些特殊字符(例如$)的名稱處理可能變得非常麻煩。我們將要 重命名某些列 ,在 Excel 中,可以通過單擊列名稱並鍵入新名稱,在SQL中,你可以執行 ALTER TABLE 語句或使用 SQL Server 中的 sp_rename。

在 Pandas 中,這樣做的方式是rename 方法。

在實現上述方法時,我們將使用列標題 「gdp_per_capita」 替換列標題「US $」 。一個快速的 .head() 方法調用確認已經更改。


用Python執行SQL、Excel常見任務?10個方法全搞定


05

刪除列

有一些數據損壞!如果你查看 Rank 列,你會注意到散亂的隨機破折號。這不是很好,由於實際的數字順序被破壞,這使得 Rank 列無用,特別是使用 Pandas 默認提供的編號索引。

幸運的是,使用內置的 Python 方法: del ,刪除列變得很容易。

現在,通過另外調用 head 方法,我們可以確認 dataframe 不再包含 rank 列。


用Python執行SQL、Excel常見任務?10個方法全搞定


06

在列中轉換數據類型

有時,給定的數據類型很難使用。這個方便的教程將分解 Python 中不同數據類型之間的差異,以便你需要複習。

在 Excel 中,你可以右鍵單擊並找到將列數據轉換為不同類型的數據的方法。你可以複製一組由公式呈現的單元格,並將其粘貼為值,你可以使用格式選項快速切換數字,日期和字符串。

有時候,在 Python 中切換一種數據類型為其他數據類型並不容易,但當然有可能。

我們首先在 Python 中使用 re 庫。我們將使用 正則表達式來替換 gdp_per_capita 列中的逗號 ,以便我們可以更容易地使用該列。

re.sub 方法本質上是使用空格替換逗號。以下詳細介紹了 re庫 的各個方法。

現在我們已經刪除了逗號,我們可以輕易地將列轉換為數字。

現在我們可以計算這列的平均值。


用Python執行SQL、Excel常見任務?10個方法全搞定


我們可以看到,人均 GDP 的平均值約為13037.27美元,如果這列被判斷為字符串(不能執行算術運算),我們就無法做到這一點。現在,可以對我們以前不能做的人均 GDP 列進行各種計算,包括通過不同的值過濾列,並確定列的百分位數值。

07

選擇/過濾數據

任何數據分析師的基本需求是 將大型數據集分割成有價值的結果。 為了做到這一點,你必須檢查一部分數據:這對選擇和過濾數據是非常有幫助的。在 SQL 中,這是通過混合使用 SELECT 和不同的其他函數實現的,而在 Excel 中,可以通過拖放數據和執行過濾器來實現。

你可以使用 Pandas 庫不同的方法或查詢快速過濾。

作為一個快速的代表,只顯示人均 GDP 高於 5 萬美元的國家。

這是這樣做到的:

我們為一個新的 dataframe 分配一個布爾索引的過濾器,這個方法基本上就是說「創建一個人均 GDP 超過 50000 的新 dataframe」。現在我們可以顯示gdp50000。


用Python執行SQL、Excel常見任務?10個方法全搞定


有12個國家的 GDP 超過 50000!

選擇屬於以 s 開頭的國家的行。

現在可以顯示一個新 dataframe,其中只包含以 s 開頭的國家。使用 len 方法快速檢查(一個用於計算 dataframe 中的行數的救星!)表示我們有 25 個國家符合。


用Python執行SQL、Excel常見任務?10個方法全搞定


要是我們想把這兩個過濾條件連在一起呢?

這裡是連接過濾的方法。在多個過濾條件之前,你想要了解它的工作原理。你還需要了解 Python 中的基本操作符。為了這個練習的目的,你只需要知道 「&」代表 AND,而「|」代表 Python 中的 OR。 然而,通過更深入地瞭解所有基礎運算符,你可以用各種條件輕鬆地處理的數據。

讓我們繼續工作,並在過濾選擇以「S」開頭且有大於 50,000 人均 GDP 的國家。

用Python執行SQL、Excel常見任務?10個方法全搞定

現在過濾以「S」開頭 或人均 GDP 超過 50000 的國家。


用Python執行SQL、Excel常見任務?10個方法全搞定


我們正在努力處理 Pandas 中的過濾視圖。

用計算機來處理數據

沒有可以幫助計算不同的結果的方法,那麼 Excel 會變成什麼?

在這種情況下,Pandas 大量依賴於 numpy 庫和通用 Python 語法將計算放在一起。對我們一直在研究的 GDP 數據集進行一系列簡單的計算。例如,計算人均國民生產總值超過 5 萬的總和。

用Python執行SQL、Excel常見任務?10個方法全搞定

這將給你答案為 770046 。使用相同的邏輯,我們可以計算各種的值 — 完整列表位於左側菜單欄下的計算/描述性統計部分的 Pandas 文檔。

09

數據可視化(圖表/圖形)

數據可視化是一個非常強大的工具 – 它允許你以可理解的格式與其他人分享你獲得的見解。畢竟,一張照片值得一千字。SQL 和 Excel 都具有將查詢轉換為圖表和圖形的功能。使用 seaborn 和 matplotlib 庫,你可以使用 Python 執行相同操作。

有關數據可視化選項的綜合的教程 – 我最喜歡的是這個 Github readme document (全部在文本中),它解釋瞭如何在 Seaborn 中構建概率分佈和各種各樣的圖。這應該讓你瞭解 Python 中數據可視化的強大功能。如果你感到不知所措,你可以使用一些解決方案,如Plot.ly,這可能更直觀地掌握。

我們不會檢查每一個數據可視化選項,只要說使用 Python,可以比任何 SQL 提供的功能具有更強大的可視化功能,必須權衡 使用 Python 獲得更多的靈活性 ,以及在 Excel 中通過模板生成圖表的簡易性。

在這種情況下,我們將建立一個簡單的直方圖,顯示人均 GDP 超過 5 萬美元的國家的人均 GDP 分佈。

"

數據從業者有許多工具可用於分割數據。有些人使用 Excel,有些人使用SQL,有些人使用Python。對於某些任務,使用 Python 的優點是顯而易見的。以更快的速度處理更大的數據集。使用基於 Python 構建的開源機器學習庫。你可以輕鬆導入和導出不同格式的數據。

由於其多功能性,Python 可以成為任何數據分析師工具箱的重要組成部分。但是,這很難開始。大多數數據分析師可能熟悉 SQL 或 Excel。本篇是涉及幫助你 將技能和技術從 EXcel 和 SQL 轉移到 Python。

首先,讓我們來設置 Python。最簡單的方法就是使用 Jupyter Notebook 和 Anaconda。這個可視化界面將允許你插入 Python 代碼並立即查看輸出。這也將使你輕鬆跟隨本教程的其餘部分。

我強烈推薦使用 Anaconda,但這個初學者指南也將幫助你安裝 Python——儘管這將使本篇文章更加難以接受。

我們從基礎開始: 打開一個數據集。

01

Python資源共享群:484031800

導入數據

你可以導入.sql 數據庫並用 SQL 查詢中處理它們。在Excel中,你可以雙擊一個文件,然後在電子表格模式下開始處理它。在 Python 中,有更多複雜的特性,得益於能夠處理許多不同類型的文件格式和數據源的。

使用一個數據處理庫 Pandas,你可以使用 read 方法導入各種文件格式。使用這個方法所能導入完整的文件格式清單是在 Pandas 文檔中。你可以導入從 CSV 和 Excel 文件到 HTML 文件中的所有內容!

使用 Python 的最大優點之一是能夠從網絡的巨大範圍中獲取數據的能力,而不是隻能訪問手動下載的文件。在 Python 的requests 庫可以幫助你分類不同的網站,並從它們獲取數據,而 BeautifulSoup 庫可以幫助你處理和過濾數據,那麼你將精確得到你所需要的。如果你要去這條路線,請小心使用權問題。

在這個例子中,我們將獲取許多國家人均 GDP(一個技術術語,意思是一個國家的人均收入)的維基百科表格, 並在 Python 中使用 Pandas 庫對數據進行排序。

首先,導入我們需要的庫。


用Python執行SQL、Excel常見任務?10個方法全搞定


需要 Pandas 庫處理我們的數據。需要 numpy 庫來執行數值的操作和轉換。我們需要 requests 庫來從網站獲取 HTML 數據。需要 BeautifulSoup 來處理這些數據。最後,需要 Python(re)的正則表達式庫來更改在處理數據時將出現的某些字符串。

在 Python 中,不需要知道很多關於正則表達式的知識,但它們是一個強大的工具, 可用於匹配和替換某些字符串或子字符串。 如果你想了解更多,請參考以下內容。


用Python執行SQL、Excel常見任務?10個方法全搞定


02

信任這個網站的一些代碼

這是一個更具技術性的解釋,詳細說明如何使用 Python 代碼來獲取 HTML 表格。

你可以將上面的代碼複製粘貼到你自己的 Anaconda 中,如果你用一些 Python 代碼運行,可以迭代它!

下面是代碼的輸出,如果你不修改它,就是所謂的字典。


用Python執行SQL、Excel常見任務?10個方法全搞定


你會注意到逗號分隔起來的括號的 key-value 列表。每個括號內的列表都代表了我們 dataframe 中的一行,每列都以 key 表示:我們正在處理一個國家的排名,人均 GDP(以美元表示)及其名稱(用「國家」)。

有關數據結構,如列表和詞典,如何在 Python 中的運行的更多信息,本篇將有所幫助。

幸運的是,為了將數據移動到 Pandas dataframe 中,我們不需要理解這些數據, 這是將數據聚合到 SQL 表或 Excel 電子表格的類似方式。 使用一行代碼,我們已經將這些數據分配並保存到 Pandas dataframe 中 —— 事實證明是這種情況,字典是要轉換為 dataframe 的完美數據格式。

通過這個簡單的 Python 賦值給變量 gdp,我們現在有了一個 dataframe,可以在我們編寫 gdp 的時候打開和瀏覽。我們可以為該詞添加 Python 方法, 以創建其中的數據的策略視圖。 作為我們剛剛在 Python 中使用等號和賦值的一點深入瞭解,很有幫助。

03

快速查看數據

現在,如果要快速查看我們所做的工作,我們可以使用 head() 方法,它與 Excel 中的選擇幾行或SQL中的 LIMIT 方法非常相似。輕鬆地使用它來快速查看數據集,而無需加載整個數據集!如果要查看特定數量的行,還可以在 head() 方法中插入行數。


用Python執行SQL、Excel常見任務?10個方法全搞定


我們得到的輸出是人均 GDP 數據集的前五行(head 方法的默認值),我們可以看到它們整齊地排列成三列以及索引列。請注意, Python 索引從0開始,而不是1 ,這樣,如果要調用 dataframe 中的第一個值,則使用0而不是1!你可以通過在圓括號內添加你選擇的數字來更改顯示的行數。試試看!

04

重命名列

有一件你在 Python 中很快意識到的事是,具有某些特殊字符(例如$)的名稱處理可能變得非常麻煩。我們將要 重命名某些列 ,在 Excel 中,可以通過單擊列名稱並鍵入新名稱,在SQL中,你可以執行 ALTER TABLE 語句或使用 SQL Server 中的 sp_rename。

在 Pandas 中,這樣做的方式是rename 方法。

在實現上述方法時,我們將使用列標題 「gdp_per_capita」 替換列標題「US $」 。一個快速的 .head() 方法調用確認已經更改。


用Python執行SQL、Excel常見任務?10個方法全搞定


05

刪除列

有一些數據損壞!如果你查看 Rank 列,你會注意到散亂的隨機破折號。這不是很好,由於實際的數字順序被破壞,這使得 Rank 列無用,特別是使用 Pandas 默認提供的編號索引。

幸運的是,使用內置的 Python 方法: del ,刪除列變得很容易。

現在,通過另外調用 head 方法,我們可以確認 dataframe 不再包含 rank 列。


用Python執行SQL、Excel常見任務?10個方法全搞定


06

在列中轉換數據類型

有時,給定的數據類型很難使用。這個方便的教程將分解 Python 中不同數據類型之間的差異,以便你需要複習。

在 Excel 中,你可以右鍵單擊並找到將列數據轉換為不同類型的數據的方法。你可以複製一組由公式呈現的單元格,並將其粘貼為值,你可以使用格式選項快速切換數字,日期和字符串。

有時候,在 Python 中切換一種數據類型為其他數據類型並不容易,但當然有可能。

我們首先在 Python 中使用 re 庫。我們將使用 正則表達式來替換 gdp_per_capita 列中的逗號 ,以便我們可以更容易地使用該列。

re.sub 方法本質上是使用空格替換逗號。以下詳細介紹了 re庫 的各個方法。

現在我們已經刪除了逗號,我們可以輕易地將列轉換為數字。

現在我們可以計算這列的平均值。


用Python執行SQL、Excel常見任務?10個方法全搞定


我們可以看到,人均 GDP 的平均值約為13037.27美元,如果這列被判斷為字符串(不能執行算術運算),我們就無法做到這一點。現在,可以對我們以前不能做的人均 GDP 列進行各種計算,包括通過不同的值過濾列,並確定列的百分位數值。

07

選擇/過濾數據

任何數據分析師的基本需求是 將大型數據集分割成有價值的結果。 為了做到這一點,你必須檢查一部分數據:這對選擇和過濾數據是非常有幫助的。在 SQL 中,這是通過混合使用 SELECT 和不同的其他函數實現的,而在 Excel 中,可以通過拖放數據和執行過濾器來實現。

你可以使用 Pandas 庫不同的方法或查詢快速過濾。

作為一個快速的代表,只顯示人均 GDP 高於 5 萬美元的國家。

這是這樣做到的:

我們為一個新的 dataframe 分配一個布爾索引的過濾器,這個方法基本上就是說「創建一個人均 GDP 超過 50000 的新 dataframe」。現在我們可以顯示gdp50000。


用Python執行SQL、Excel常見任務?10個方法全搞定


有12個國家的 GDP 超過 50000!

選擇屬於以 s 開頭的國家的行。

現在可以顯示一個新 dataframe,其中只包含以 s 開頭的國家。使用 len 方法快速檢查(一個用於計算 dataframe 中的行數的救星!)表示我們有 25 個國家符合。


用Python執行SQL、Excel常見任務?10個方法全搞定


要是我們想把這兩個過濾條件連在一起呢?

這裡是連接過濾的方法。在多個過濾條件之前,你想要了解它的工作原理。你還需要了解 Python 中的基本操作符。為了這個練習的目的,你只需要知道 「&」代表 AND,而「|」代表 Python 中的 OR。 然而,通過更深入地瞭解所有基礎運算符,你可以用各種條件輕鬆地處理的數據。

讓我們繼續工作,並在過濾選擇以「S」開頭且有大於 50,000 人均 GDP 的國家。

用Python執行SQL、Excel常見任務?10個方法全搞定

現在過濾以「S」開頭 或人均 GDP 超過 50000 的國家。


用Python執行SQL、Excel常見任務?10個方法全搞定


我們正在努力處理 Pandas 中的過濾視圖。

用計算機來處理數據

沒有可以幫助計算不同的結果的方法,那麼 Excel 會變成什麼?

在這種情況下,Pandas 大量依賴於 numpy 庫和通用 Python 語法將計算放在一起。對我們一直在研究的 GDP 數據集進行一系列簡單的計算。例如,計算人均國民生產總值超過 5 萬的總和。

用Python執行SQL、Excel常見任務?10個方法全搞定

這將給你答案為 770046 。使用相同的邏輯,我們可以計算各種的值 — 完整列表位於左側菜單欄下的計算/描述性統計部分的 Pandas 文檔。

09

數據可視化(圖表/圖形)

數據可視化是一個非常強大的工具 – 它允許你以可理解的格式與其他人分享你獲得的見解。畢竟,一張照片值得一千字。SQL 和 Excel 都具有將查詢轉換為圖表和圖形的功能。使用 seaborn 和 matplotlib 庫,你可以使用 Python 執行相同操作。

有關數據可視化選項的綜合的教程 – 我最喜歡的是這個 Github readme document (全部在文本中),它解釋瞭如何在 Seaborn 中構建概率分佈和各種各樣的圖。這應該讓你瞭解 Python 中數據可視化的強大功能。如果你感到不知所措,你可以使用一些解決方案,如Plot.ly,這可能更直觀地掌握。

我們不會檢查每一個數據可視化選項,只要說使用 Python,可以比任何 SQL 提供的功能具有更強大的可視化功能,必須權衡 使用 Python 獲得更多的靈活性 ,以及在 Excel 中通過模板生成圖表的簡易性。

在這種情況下,我們將建立一個簡單的直方圖,顯示人均 GDP 超過 5 萬美元的國家的人均 GDP 分佈。

用Python執行SQL、Excel常見任務?10個方法全搞定

有了這個強大的直方圖方法 (hist()),我們現在可以生成一個直方圖,顯示出大部分人均 GDP 在 5 萬到 7 萬美元之間!

10

分組和連接數據

在 Excel 和 SQL 中,諸如 JOIN 方法和數據透視表之類的強大工具可以快速彙總數據。

Pandas 和 Python 共享了許多從 SQL 和 Excel 被移植的相同方法。可以在 數據集中對數據進行分組,並將不同的數據集連接在一起。 你可以看看這裡的文檔。你會發現,由 Pandas 中的merge 方法提供的連接功能與 SQL 通過 join 命令提供的連接功能非常相似,而 Pandas 還為過去在 Excel 中使用數據透視表的人提供了 pivot table 方法。

我們將制定的人均 GDP 的表格與世界銀行的世界發展指數清單進行簡單的連接。

首先導入世界發展指數的 .csv文件。

使用 .head() 方法快速查看這個數據集中的不同列。

"

數據從業者有許多工具可用於分割數據。有些人使用 Excel,有些人使用SQL,有些人使用Python。對於某些任務,使用 Python 的優點是顯而易見的。以更快的速度處理更大的數據集。使用基於 Python 構建的開源機器學習庫。你可以輕鬆導入和導出不同格式的數據。

由於其多功能性,Python 可以成為任何數據分析師工具箱的重要組成部分。但是,這很難開始。大多數數據分析師可能熟悉 SQL 或 Excel。本篇是涉及幫助你 將技能和技術從 EXcel 和 SQL 轉移到 Python。

首先,讓我們來設置 Python。最簡單的方法就是使用 Jupyter Notebook 和 Anaconda。這個可視化界面將允許你插入 Python 代碼並立即查看輸出。這也將使你輕鬆跟隨本教程的其餘部分。

我強烈推薦使用 Anaconda,但這個初學者指南也將幫助你安裝 Python——儘管這將使本篇文章更加難以接受。

我們從基礎開始: 打開一個數據集。

01

Python資源共享群:484031800

導入數據

你可以導入.sql 數據庫並用 SQL 查詢中處理它們。在Excel中,你可以雙擊一個文件,然後在電子表格模式下開始處理它。在 Python 中,有更多複雜的特性,得益於能夠處理許多不同類型的文件格式和數據源的。

使用一個數據處理庫 Pandas,你可以使用 read 方法導入各種文件格式。使用這個方法所能導入完整的文件格式清單是在 Pandas 文檔中。你可以導入從 CSV 和 Excel 文件到 HTML 文件中的所有內容!

使用 Python 的最大優點之一是能夠從網絡的巨大範圍中獲取數據的能力,而不是隻能訪問手動下載的文件。在 Python 的requests 庫可以幫助你分類不同的網站,並從它們獲取數據,而 BeautifulSoup 庫可以幫助你處理和過濾數據,那麼你將精確得到你所需要的。如果你要去這條路線,請小心使用權問題。

在這個例子中,我們將獲取許多國家人均 GDP(一個技術術語,意思是一個國家的人均收入)的維基百科表格, 並在 Python 中使用 Pandas 庫對數據進行排序。

首先,導入我們需要的庫。


用Python執行SQL、Excel常見任務?10個方法全搞定


需要 Pandas 庫處理我們的數據。需要 numpy 庫來執行數值的操作和轉換。我們需要 requests 庫來從網站獲取 HTML 數據。需要 BeautifulSoup 來處理這些數據。最後,需要 Python(re)的正則表達式庫來更改在處理數據時將出現的某些字符串。

在 Python 中,不需要知道很多關於正則表達式的知識,但它們是一個強大的工具, 可用於匹配和替換某些字符串或子字符串。 如果你想了解更多,請參考以下內容。


用Python執行SQL、Excel常見任務?10個方法全搞定


02

信任這個網站的一些代碼

這是一個更具技術性的解釋,詳細說明如何使用 Python 代碼來獲取 HTML 表格。

你可以將上面的代碼複製粘貼到你自己的 Anaconda 中,如果你用一些 Python 代碼運行,可以迭代它!

下面是代碼的輸出,如果你不修改它,就是所謂的字典。


用Python執行SQL、Excel常見任務?10個方法全搞定


你會注意到逗號分隔起來的括號的 key-value 列表。每個括號內的列表都代表了我們 dataframe 中的一行,每列都以 key 表示:我們正在處理一個國家的排名,人均 GDP(以美元表示)及其名稱(用「國家」)。

有關數據結構,如列表和詞典,如何在 Python 中的運行的更多信息,本篇將有所幫助。

幸運的是,為了將數據移動到 Pandas dataframe 中,我們不需要理解這些數據, 這是將數據聚合到 SQL 表或 Excel 電子表格的類似方式。 使用一行代碼,我們已經將這些數據分配並保存到 Pandas dataframe 中 —— 事實證明是這種情況,字典是要轉換為 dataframe 的完美數據格式。

通過這個簡單的 Python 賦值給變量 gdp,我們現在有了一個 dataframe,可以在我們編寫 gdp 的時候打開和瀏覽。我們可以為該詞添加 Python 方法, 以創建其中的數據的策略視圖。 作為我們剛剛在 Python 中使用等號和賦值的一點深入瞭解,很有幫助。

03

快速查看數據

現在,如果要快速查看我們所做的工作,我們可以使用 head() 方法,它與 Excel 中的選擇幾行或SQL中的 LIMIT 方法非常相似。輕鬆地使用它來快速查看數據集,而無需加載整個數據集!如果要查看特定數量的行,還可以在 head() 方法中插入行數。


用Python執行SQL、Excel常見任務?10個方法全搞定


我們得到的輸出是人均 GDP 數據集的前五行(head 方法的默認值),我們可以看到它們整齊地排列成三列以及索引列。請注意, Python 索引從0開始,而不是1 ,這樣,如果要調用 dataframe 中的第一個值,則使用0而不是1!你可以通過在圓括號內添加你選擇的數字來更改顯示的行數。試試看!

04

重命名列

有一件你在 Python 中很快意識到的事是,具有某些特殊字符(例如$)的名稱處理可能變得非常麻煩。我們將要 重命名某些列 ,在 Excel 中,可以通過單擊列名稱並鍵入新名稱,在SQL中,你可以執行 ALTER TABLE 語句或使用 SQL Server 中的 sp_rename。

在 Pandas 中,這樣做的方式是rename 方法。

在實現上述方法時,我們將使用列標題 「gdp_per_capita」 替換列標題「US $」 。一個快速的 .head() 方法調用確認已經更改。


用Python執行SQL、Excel常見任務?10個方法全搞定


05

刪除列

有一些數據損壞!如果你查看 Rank 列,你會注意到散亂的隨機破折號。這不是很好,由於實際的數字順序被破壞,這使得 Rank 列無用,特別是使用 Pandas 默認提供的編號索引。

幸運的是,使用內置的 Python 方法: del ,刪除列變得很容易。

現在,通過另外調用 head 方法,我們可以確認 dataframe 不再包含 rank 列。


用Python執行SQL、Excel常見任務?10個方法全搞定


06

在列中轉換數據類型

有時,給定的數據類型很難使用。這個方便的教程將分解 Python 中不同數據類型之間的差異,以便你需要複習。

在 Excel 中,你可以右鍵單擊並找到將列數據轉換為不同類型的數據的方法。你可以複製一組由公式呈現的單元格,並將其粘貼為值,你可以使用格式選項快速切換數字,日期和字符串。

有時候,在 Python 中切換一種數據類型為其他數據類型並不容易,但當然有可能。

我們首先在 Python 中使用 re 庫。我們將使用 正則表達式來替換 gdp_per_capita 列中的逗號 ,以便我們可以更容易地使用該列。

re.sub 方法本質上是使用空格替換逗號。以下詳細介紹了 re庫 的各個方法。

現在我們已經刪除了逗號,我們可以輕易地將列轉換為數字。

現在我們可以計算這列的平均值。


用Python執行SQL、Excel常見任務?10個方法全搞定


我們可以看到,人均 GDP 的平均值約為13037.27美元,如果這列被判斷為字符串(不能執行算術運算),我們就無法做到這一點。現在,可以對我們以前不能做的人均 GDP 列進行各種計算,包括通過不同的值過濾列,並確定列的百分位數值。

07

選擇/過濾數據

任何數據分析師的基本需求是 將大型數據集分割成有價值的結果。 為了做到這一點,你必須檢查一部分數據:這對選擇和過濾數據是非常有幫助的。在 SQL 中,這是通過混合使用 SELECT 和不同的其他函數實現的,而在 Excel 中,可以通過拖放數據和執行過濾器來實現。

你可以使用 Pandas 庫不同的方法或查詢快速過濾。

作為一個快速的代表,只顯示人均 GDP 高於 5 萬美元的國家。

這是這樣做到的:

我們為一個新的 dataframe 分配一個布爾索引的過濾器,這個方法基本上就是說「創建一個人均 GDP 超過 50000 的新 dataframe」。現在我們可以顯示gdp50000。


用Python執行SQL、Excel常見任務?10個方法全搞定


有12個國家的 GDP 超過 50000!

選擇屬於以 s 開頭的國家的行。

現在可以顯示一個新 dataframe,其中只包含以 s 開頭的國家。使用 len 方法快速檢查(一個用於計算 dataframe 中的行數的救星!)表示我們有 25 個國家符合。


用Python執行SQL、Excel常見任務?10個方法全搞定


要是我們想把這兩個過濾條件連在一起呢?

這裡是連接過濾的方法。在多個過濾條件之前,你想要了解它的工作原理。你還需要了解 Python 中的基本操作符。為了這個練習的目的,你只需要知道 「&」代表 AND,而「|」代表 Python 中的 OR。 然而,通過更深入地瞭解所有基礎運算符,你可以用各種條件輕鬆地處理的數據。

讓我們繼續工作,並在過濾選擇以「S」開頭且有大於 50,000 人均 GDP 的國家。

用Python執行SQL、Excel常見任務?10個方法全搞定

現在過濾以「S」開頭 或人均 GDP 超過 50000 的國家。


用Python執行SQL、Excel常見任務?10個方法全搞定


我們正在努力處理 Pandas 中的過濾視圖。

用計算機來處理數據

沒有可以幫助計算不同的結果的方法,那麼 Excel 會變成什麼?

在這種情況下,Pandas 大量依賴於 numpy 庫和通用 Python 語法將計算放在一起。對我們一直在研究的 GDP 數據集進行一系列簡單的計算。例如,計算人均國民生產總值超過 5 萬的總和。

用Python執行SQL、Excel常見任務?10個方法全搞定

這將給你答案為 770046 。使用相同的邏輯,我們可以計算各種的值 — 完整列表位於左側菜單欄下的計算/描述性統計部分的 Pandas 文檔。

09

數據可視化(圖表/圖形)

數據可視化是一個非常強大的工具 – 它允許你以可理解的格式與其他人分享你獲得的見解。畢竟,一張照片值得一千字。SQL 和 Excel 都具有將查詢轉換為圖表和圖形的功能。使用 seaborn 和 matplotlib 庫,你可以使用 Python 執行相同操作。

有關數據可視化選項的綜合的教程 – 我最喜歡的是這個 Github readme document (全部在文本中),它解釋瞭如何在 Seaborn 中構建概率分佈和各種各樣的圖。這應該讓你瞭解 Python 中數據可視化的強大功能。如果你感到不知所措,你可以使用一些解決方案,如Plot.ly,這可能更直觀地掌握。

我們不會檢查每一個數據可視化選項,只要說使用 Python,可以比任何 SQL 提供的功能具有更強大的可視化功能,必須權衡 使用 Python 獲得更多的靈活性 ,以及在 Excel 中通過模板生成圖表的簡易性。

在這種情況下,我們將建立一個簡單的直方圖,顯示人均 GDP 超過 5 萬美元的國家的人均 GDP 分佈。

用Python執行SQL、Excel常見任務?10個方法全搞定

有了這個強大的直方圖方法 (hist()),我們現在可以生成一個直方圖,顯示出大部分人均 GDP 在 5 萬到 7 萬美元之間!

10

分組和連接數據

在 Excel 和 SQL 中,諸如 JOIN 方法和數據透視表之類的強大工具可以快速彙總數據。

Pandas 和 Python 共享了許多從 SQL 和 Excel 被移植的相同方法。可以在 數據集中對數據進行分組,並將不同的數據集連接在一起。 你可以看看這裡的文檔。你會發現,由 Pandas 中的merge 方法提供的連接功能與 SQL 通過 join 命令提供的連接功能非常相似,而 Pandas 還為過去在 Excel 中使用數據透視表的人提供了 pivot table 方法。

我們將制定的人均 GDP 的表格與世界銀行的世界發展指數清單進行簡單的連接。

首先導入世界發展指數的 .csv文件。

使用 .head() 方法快速查看這個數據集中的不同列。

用Python執行SQL、Excel常見任務?10個方法全搞定

現在我們完成了,我們可以快速看看,添加了幾個可以操作的列,包括不同年份的數據來源。

現在我們來合併數據:

我們現在可以看到,這個表格包含了人均 GDP 列和具有不同列的遍及全國的數據。對於熟悉 SQL join 的用戶,你可以看到我們正在對原始 dataframe 的 Country 列進行內部連接。

"

數據從業者有許多工具可用於分割數據。有些人使用 Excel,有些人使用SQL,有些人使用Python。對於某些任務,使用 Python 的優點是顯而易見的。以更快的速度處理更大的數據集。使用基於 Python 構建的開源機器學習庫。你可以輕鬆導入和導出不同格式的數據。

由於其多功能性,Python 可以成為任何數據分析師工具箱的重要組成部分。但是,這很難開始。大多數數據分析師可能熟悉 SQL 或 Excel。本篇是涉及幫助你 將技能和技術從 EXcel 和 SQL 轉移到 Python。

首先,讓我們來設置 Python。最簡單的方法就是使用 Jupyter Notebook 和 Anaconda。這個可視化界面將允許你插入 Python 代碼並立即查看輸出。這也將使你輕鬆跟隨本教程的其餘部分。

我強烈推薦使用 Anaconda,但這個初學者指南也將幫助你安裝 Python——儘管這將使本篇文章更加難以接受。

我們從基礎開始: 打開一個數據集。

01

Python資源共享群:484031800

導入數據

你可以導入.sql 數據庫並用 SQL 查詢中處理它們。在Excel中,你可以雙擊一個文件,然後在電子表格模式下開始處理它。在 Python 中,有更多複雜的特性,得益於能夠處理許多不同類型的文件格式和數據源的。

使用一個數據處理庫 Pandas,你可以使用 read 方法導入各種文件格式。使用這個方法所能導入完整的文件格式清單是在 Pandas 文檔中。你可以導入從 CSV 和 Excel 文件到 HTML 文件中的所有內容!

使用 Python 的最大優點之一是能夠從網絡的巨大範圍中獲取數據的能力,而不是隻能訪問手動下載的文件。在 Python 的requests 庫可以幫助你分類不同的網站,並從它們獲取數據,而 BeautifulSoup 庫可以幫助你處理和過濾數據,那麼你將精確得到你所需要的。如果你要去這條路線,請小心使用權問題。

在這個例子中,我們將獲取許多國家人均 GDP(一個技術術語,意思是一個國家的人均收入)的維基百科表格, 並在 Python 中使用 Pandas 庫對數據進行排序。

首先,導入我們需要的庫。


用Python執行SQL、Excel常見任務?10個方法全搞定


需要 Pandas 庫處理我們的數據。需要 numpy 庫來執行數值的操作和轉換。我們需要 requests 庫來從網站獲取 HTML 數據。需要 BeautifulSoup 來處理這些數據。最後,需要 Python(re)的正則表達式庫來更改在處理數據時將出現的某些字符串。

在 Python 中,不需要知道很多關於正則表達式的知識,但它們是一個強大的工具, 可用於匹配和替換某些字符串或子字符串。 如果你想了解更多,請參考以下內容。


用Python執行SQL、Excel常見任務?10個方法全搞定


02

信任這個網站的一些代碼

這是一個更具技術性的解釋,詳細說明如何使用 Python 代碼來獲取 HTML 表格。

你可以將上面的代碼複製粘貼到你自己的 Anaconda 中,如果你用一些 Python 代碼運行,可以迭代它!

下面是代碼的輸出,如果你不修改它,就是所謂的字典。


用Python執行SQL、Excel常見任務?10個方法全搞定


你會注意到逗號分隔起來的括號的 key-value 列表。每個括號內的列表都代表了我們 dataframe 中的一行,每列都以 key 表示:我們正在處理一個國家的排名,人均 GDP(以美元表示)及其名稱(用「國家」)。

有關數據結構,如列表和詞典,如何在 Python 中的運行的更多信息,本篇將有所幫助。

幸運的是,為了將數據移動到 Pandas dataframe 中,我們不需要理解這些數據, 這是將數據聚合到 SQL 表或 Excel 電子表格的類似方式。 使用一行代碼,我們已經將這些數據分配並保存到 Pandas dataframe 中 —— 事實證明是這種情況,字典是要轉換為 dataframe 的完美數據格式。

通過這個簡單的 Python 賦值給變量 gdp,我們現在有了一個 dataframe,可以在我們編寫 gdp 的時候打開和瀏覽。我們可以為該詞添加 Python 方法, 以創建其中的數據的策略視圖。 作為我們剛剛在 Python 中使用等號和賦值的一點深入瞭解,很有幫助。

03

快速查看數據

現在,如果要快速查看我們所做的工作,我們可以使用 head() 方法,它與 Excel 中的選擇幾行或SQL中的 LIMIT 方法非常相似。輕鬆地使用它來快速查看數據集,而無需加載整個數據集!如果要查看特定數量的行,還可以在 head() 方法中插入行數。


用Python執行SQL、Excel常見任務?10個方法全搞定


我們得到的輸出是人均 GDP 數據集的前五行(head 方法的默認值),我們可以看到它們整齊地排列成三列以及索引列。請注意, Python 索引從0開始,而不是1 ,這樣,如果要調用 dataframe 中的第一個值,則使用0而不是1!你可以通過在圓括號內添加你選擇的數字來更改顯示的行數。試試看!

04

重命名列

有一件你在 Python 中很快意識到的事是,具有某些特殊字符(例如$)的名稱處理可能變得非常麻煩。我們將要 重命名某些列 ,在 Excel 中,可以通過單擊列名稱並鍵入新名稱,在SQL中,你可以執行 ALTER TABLE 語句或使用 SQL Server 中的 sp_rename。

在 Pandas 中,這樣做的方式是rename 方法。

在實現上述方法時,我們將使用列標題 「gdp_per_capita」 替換列標題「US $」 。一個快速的 .head() 方法調用確認已經更改。


用Python執行SQL、Excel常見任務?10個方法全搞定


05

刪除列

有一些數據損壞!如果你查看 Rank 列,你會注意到散亂的隨機破折號。這不是很好,由於實際的數字順序被破壞,這使得 Rank 列無用,特別是使用 Pandas 默認提供的編號索引。

幸運的是,使用內置的 Python 方法: del ,刪除列變得很容易。

現在,通過另外調用 head 方法,我們可以確認 dataframe 不再包含 rank 列。


用Python執行SQL、Excel常見任務?10個方法全搞定


06

在列中轉換數據類型

有時,給定的數據類型很難使用。這個方便的教程將分解 Python 中不同數據類型之間的差異,以便你需要複習。

在 Excel 中,你可以右鍵單擊並找到將列數據轉換為不同類型的數據的方法。你可以複製一組由公式呈現的單元格,並將其粘貼為值,你可以使用格式選項快速切換數字,日期和字符串。

有時候,在 Python 中切換一種數據類型為其他數據類型並不容易,但當然有可能。

我們首先在 Python 中使用 re 庫。我們將使用 正則表達式來替換 gdp_per_capita 列中的逗號 ,以便我們可以更容易地使用該列。

re.sub 方法本質上是使用空格替換逗號。以下詳細介紹了 re庫 的各個方法。

現在我們已經刪除了逗號,我們可以輕易地將列轉換為數字。

現在我們可以計算這列的平均值。


用Python執行SQL、Excel常見任務?10個方法全搞定


我們可以看到,人均 GDP 的平均值約為13037.27美元,如果這列被判斷為字符串(不能執行算術運算),我們就無法做到這一點。現在,可以對我們以前不能做的人均 GDP 列進行各種計算,包括通過不同的值過濾列,並確定列的百分位數值。

07

選擇/過濾數據

任何數據分析師的基本需求是 將大型數據集分割成有價值的結果。 為了做到這一點,你必須檢查一部分數據:這對選擇和過濾數據是非常有幫助的。在 SQL 中,這是通過混合使用 SELECT 和不同的其他函數實現的,而在 Excel 中,可以通過拖放數據和執行過濾器來實現。

你可以使用 Pandas 庫不同的方法或查詢快速過濾。

作為一個快速的代表,只顯示人均 GDP 高於 5 萬美元的國家。

這是這樣做到的:

我們為一個新的 dataframe 分配一個布爾索引的過濾器,這個方法基本上就是說「創建一個人均 GDP 超過 50000 的新 dataframe」。現在我們可以顯示gdp50000。


用Python執行SQL、Excel常見任務?10個方法全搞定


有12個國家的 GDP 超過 50000!

選擇屬於以 s 開頭的國家的行。

現在可以顯示一個新 dataframe,其中只包含以 s 開頭的國家。使用 len 方法快速檢查(一個用於計算 dataframe 中的行數的救星!)表示我們有 25 個國家符合。


用Python執行SQL、Excel常見任務?10個方法全搞定


要是我們想把這兩個過濾條件連在一起呢?

這裡是連接過濾的方法。在多個過濾條件之前,你想要了解它的工作原理。你還需要了解 Python 中的基本操作符。為了這個練習的目的,你只需要知道 「&」代表 AND,而「|」代表 Python 中的 OR。 然而,通過更深入地瞭解所有基礎運算符,你可以用各種條件輕鬆地處理的數據。

讓我們繼續工作,並在過濾選擇以「S」開頭且有大於 50,000 人均 GDP 的國家。

用Python執行SQL、Excel常見任務?10個方法全搞定

現在過濾以「S」開頭 或人均 GDP 超過 50000 的國家。


用Python執行SQL、Excel常見任務?10個方法全搞定


我們正在努力處理 Pandas 中的過濾視圖。

用計算機來處理數據

沒有可以幫助計算不同的結果的方法,那麼 Excel 會變成什麼?

在這種情況下,Pandas 大量依賴於 numpy 庫和通用 Python 語法將計算放在一起。對我們一直在研究的 GDP 數據集進行一系列簡單的計算。例如,計算人均國民生產總值超過 5 萬的總和。

用Python執行SQL、Excel常見任務?10個方法全搞定

這將給你答案為 770046 。使用相同的邏輯,我們可以計算各種的值 — 完整列表位於左側菜單欄下的計算/描述性統計部分的 Pandas 文檔。

09

數據可視化(圖表/圖形)

數據可視化是一個非常強大的工具 – 它允許你以可理解的格式與其他人分享你獲得的見解。畢竟,一張照片值得一千字。SQL 和 Excel 都具有將查詢轉換為圖表和圖形的功能。使用 seaborn 和 matplotlib 庫,你可以使用 Python 執行相同操作。

有關數據可視化選項的綜合的教程 – 我最喜歡的是這個 Github readme document (全部在文本中),它解釋瞭如何在 Seaborn 中構建概率分佈和各種各樣的圖。這應該讓你瞭解 Python 中數據可視化的強大功能。如果你感到不知所措,你可以使用一些解決方案,如Plot.ly,這可能更直觀地掌握。

我們不會檢查每一個數據可視化選項,只要說使用 Python,可以比任何 SQL 提供的功能具有更強大的可視化功能,必須權衡 使用 Python 獲得更多的靈活性 ,以及在 Excel 中通過模板生成圖表的簡易性。

在這種情況下,我們將建立一個簡單的直方圖,顯示人均 GDP 超過 5 萬美元的國家的人均 GDP 分佈。

用Python執行SQL、Excel常見任務?10個方法全搞定

有了這個強大的直方圖方法 (hist()),我們現在可以生成一個直方圖,顯示出大部分人均 GDP 在 5 萬到 7 萬美元之間!

10

分組和連接數據

在 Excel 和 SQL 中,諸如 JOIN 方法和數據透視表之類的強大工具可以快速彙總數據。

Pandas 和 Python 共享了許多從 SQL 和 Excel 被移植的相同方法。可以在 數據集中對數據進行分組,並將不同的數據集連接在一起。 你可以看看這裡的文檔。你會發現,由 Pandas 中的merge 方法提供的連接功能與 SQL 通過 join 命令提供的連接功能非常相似,而 Pandas 還為過去在 Excel 中使用數據透視表的人提供了 pivot table 方法。

我們將制定的人均 GDP 的表格與世界銀行的世界發展指數清單進行簡單的連接。

首先導入世界發展指數的 .csv文件。

使用 .head() 方法快速查看這個數據集中的不同列。

用Python執行SQL、Excel常見任務?10個方法全搞定

現在我們完成了,我們可以快速看看,添加了幾個可以操作的列,包括不同年份的數據來源。

現在我們來合併數據:

我們現在可以看到,這個表格包含了人均 GDP 列和具有不同列的遍及全國的數據。對於熟悉 SQL join 的用戶,你可以看到我們正在對原始 dataframe 的 Country 列進行內部連接。

用Python執行SQL、Excel常見任務?10個方法全搞定

現在我們有一個連接表,我們希望將國家和人均 GDP 按其所在地區進行分組。

我們現在可以使用 Pandas 中的 group 方法排列按區域分組的數據。

"

數據從業者有許多工具可用於分割數據。有些人使用 Excel,有些人使用SQL,有些人使用Python。對於某些任務,使用 Python 的優點是顯而易見的。以更快的速度處理更大的數據集。使用基於 Python 構建的開源機器學習庫。你可以輕鬆導入和導出不同格式的數據。

由於其多功能性,Python 可以成為任何數據分析師工具箱的重要組成部分。但是,這很難開始。大多數數據分析師可能熟悉 SQL 或 Excel。本篇是涉及幫助你 將技能和技術從 EXcel 和 SQL 轉移到 Python。

首先,讓我們來設置 Python。最簡單的方法就是使用 Jupyter Notebook 和 Anaconda。這個可視化界面將允許你插入 Python 代碼並立即查看輸出。這也將使你輕鬆跟隨本教程的其餘部分。

我強烈推薦使用 Anaconda,但這個初學者指南也將幫助你安裝 Python——儘管這將使本篇文章更加難以接受。

我們從基礎開始: 打開一個數據集。

01

Python資源共享群:484031800

導入數據

你可以導入.sql 數據庫並用 SQL 查詢中處理它們。在Excel中,你可以雙擊一個文件,然後在電子表格模式下開始處理它。在 Python 中,有更多複雜的特性,得益於能夠處理許多不同類型的文件格式和數據源的。

使用一個數據處理庫 Pandas,你可以使用 read 方法導入各種文件格式。使用這個方法所能導入完整的文件格式清單是在 Pandas 文檔中。你可以導入從 CSV 和 Excel 文件到 HTML 文件中的所有內容!

使用 Python 的最大優點之一是能夠從網絡的巨大範圍中獲取數據的能力,而不是隻能訪問手動下載的文件。在 Python 的requests 庫可以幫助你分類不同的網站,並從它們獲取數據,而 BeautifulSoup 庫可以幫助你處理和過濾數據,那麼你將精確得到你所需要的。如果你要去這條路線,請小心使用權問題。

在這個例子中,我們將獲取許多國家人均 GDP(一個技術術語,意思是一個國家的人均收入)的維基百科表格, 並在 Python 中使用 Pandas 庫對數據進行排序。

首先,導入我們需要的庫。


用Python執行SQL、Excel常見任務?10個方法全搞定


需要 Pandas 庫處理我們的數據。需要 numpy 庫來執行數值的操作和轉換。我們需要 requests 庫來從網站獲取 HTML 數據。需要 BeautifulSoup 來處理這些數據。最後,需要 Python(re)的正則表達式庫來更改在處理數據時將出現的某些字符串。

在 Python 中,不需要知道很多關於正則表達式的知識,但它們是一個強大的工具, 可用於匹配和替換某些字符串或子字符串。 如果你想了解更多,請參考以下內容。


用Python執行SQL、Excel常見任務?10個方法全搞定


02

信任這個網站的一些代碼

這是一個更具技術性的解釋,詳細說明如何使用 Python 代碼來獲取 HTML 表格。

你可以將上面的代碼複製粘貼到你自己的 Anaconda 中,如果你用一些 Python 代碼運行,可以迭代它!

下面是代碼的輸出,如果你不修改它,就是所謂的字典。


用Python執行SQL、Excel常見任務?10個方法全搞定


你會注意到逗號分隔起來的括號的 key-value 列表。每個括號內的列表都代表了我們 dataframe 中的一行,每列都以 key 表示:我們正在處理一個國家的排名,人均 GDP(以美元表示)及其名稱(用「國家」)。

有關數據結構,如列表和詞典,如何在 Python 中的運行的更多信息,本篇將有所幫助。

幸運的是,為了將數據移動到 Pandas dataframe 中,我們不需要理解這些數據, 這是將數據聚合到 SQL 表或 Excel 電子表格的類似方式。 使用一行代碼,我們已經將這些數據分配並保存到 Pandas dataframe 中 —— 事實證明是這種情況,字典是要轉換為 dataframe 的完美數據格式。

通過這個簡單的 Python 賦值給變量 gdp,我們現在有了一個 dataframe,可以在我們編寫 gdp 的時候打開和瀏覽。我們可以為該詞添加 Python 方法, 以創建其中的數據的策略視圖。 作為我們剛剛在 Python 中使用等號和賦值的一點深入瞭解,很有幫助。

03

快速查看數據

現在,如果要快速查看我們所做的工作,我們可以使用 head() 方法,它與 Excel 中的選擇幾行或SQL中的 LIMIT 方法非常相似。輕鬆地使用它來快速查看數據集,而無需加載整個數據集!如果要查看特定數量的行,還可以在 head() 方法中插入行數。


用Python執行SQL、Excel常見任務?10個方法全搞定


我們得到的輸出是人均 GDP 數據集的前五行(head 方法的默認值),我們可以看到它們整齊地排列成三列以及索引列。請注意, Python 索引從0開始,而不是1 ,這樣,如果要調用 dataframe 中的第一個值,則使用0而不是1!你可以通過在圓括號內添加你選擇的數字來更改顯示的行數。試試看!

04

重命名列

有一件你在 Python 中很快意識到的事是,具有某些特殊字符(例如$)的名稱處理可能變得非常麻煩。我們將要 重命名某些列 ,在 Excel 中,可以通過單擊列名稱並鍵入新名稱,在SQL中,你可以執行 ALTER TABLE 語句或使用 SQL Server 中的 sp_rename。

在 Pandas 中,這樣做的方式是rename 方法。

在實現上述方法時,我們將使用列標題 「gdp_per_capita」 替換列標題「US $」 。一個快速的 .head() 方法調用確認已經更改。


用Python執行SQL、Excel常見任務?10個方法全搞定


05

刪除列

有一些數據損壞!如果你查看 Rank 列,你會注意到散亂的隨機破折號。這不是很好,由於實際的數字順序被破壞,這使得 Rank 列無用,特別是使用 Pandas 默認提供的編號索引。

幸運的是,使用內置的 Python 方法: del ,刪除列變得很容易。

現在,通過另外調用 head 方法,我們可以確認 dataframe 不再包含 rank 列。


用Python執行SQL、Excel常見任務?10個方法全搞定


06

在列中轉換數據類型

有時,給定的數據類型很難使用。這個方便的教程將分解 Python 中不同數據類型之間的差異,以便你需要複習。

在 Excel 中,你可以右鍵單擊並找到將列數據轉換為不同類型的數據的方法。你可以複製一組由公式呈現的單元格,並將其粘貼為值,你可以使用格式選項快速切換數字,日期和字符串。

有時候,在 Python 中切換一種數據類型為其他數據類型並不容易,但當然有可能。

我們首先在 Python 中使用 re 庫。我們將使用 正則表達式來替換 gdp_per_capita 列中的逗號 ,以便我們可以更容易地使用該列。

re.sub 方法本質上是使用空格替換逗號。以下詳細介紹了 re庫 的各個方法。

現在我們已經刪除了逗號,我們可以輕易地將列轉換為數字。

現在我們可以計算這列的平均值。


用Python執行SQL、Excel常見任務?10個方法全搞定


我們可以看到,人均 GDP 的平均值約為13037.27美元,如果這列被判斷為字符串(不能執行算術運算),我們就無法做到這一點。現在,可以對我們以前不能做的人均 GDP 列進行各種計算,包括通過不同的值過濾列,並確定列的百分位數值。

07

選擇/過濾數據

任何數據分析師的基本需求是 將大型數據集分割成有價值的結果。 為了做到這一點,你必須檢查一部分數據:這對選擇和過濾數據是非常有幫助的。在 SQL 中,這是通過混合使用 SELECT 和不同的其他函數實現的,而在 Excel 中,可以通過拖放數據和執行過濾器來實現。

你可以使用 Pandas 庫不同的方法或查詢快速過濾。

作為一個快速的代表,只顯示人均 GDP 高於 5 萬美元的國家。

這是這樣做到的:

我們為一個新的 dataframe 分配一個布爾索引的過濾器,這個方法基本上就是說「創建一個人均 GDP 超過 50000 的新 dataframe」。現在我們可以顯示gdp50000。


用Python執行SQL、Excel常見任務?10個方法全搞定


有12個國家的 GDP 超過 50000!

選擇屬於以 s 開頭的國家的行。

現在可以顯示一個新 dataframe,其中只包含以 s 開頭的國家。使用 len 方法快速檢查(一個用於計算 dataframe 中的行數的救星!)表示我們有 25 個國家符合。


用Python執行SQL、Excel常見任務?10個方法全搞定


要是我們想把這兩個過濾條件連在一起呢?

這裡是連接過濾的方法。在多個過濾條件之前,你想要了解它的工作原理。你還需要了解 Python 中的基本操作符。為了這個練習的目的,你只需要知道 「&」代表 AND,而「|」代表 Python 中的 OR。 然而,通過更深入地瞭解所有基礎運算符,你可以用各種條件輕鬆地處理的數據。

讓我們繼續工作,並在過濾選擇以「S」開頭且有大於 50,000 人均 GDP 的國家。

用Python執行SQL、Excel常見任務?10個方法全搞定

現在過濾以「S」開頭 或人均 GDP 超過 50000 的國家。


用Python執行SQL、Excel常見任務?10個方法全搞定


我們正在努力處理 Pandas 中的過濾視圖。

用計算機來處理數據

沒有可以幫助計算不同的結果的方法,那麼 Excel 會變成什麼?

在這種情況下,Pandas 大量依賴於 numpy 庫和通用 Python 語法將計算放在一起。對我們一直在研究的 GDP 數據集進行一系列簡單的計算。例如,計算人均國民生產總值超過 5 萬的總和。

用Python執行SQL、Excel常見任務?10個方法全搞定

這將給你答案為 770046 。使用相同的邏輯,我們可以計算各種的值 — 完整列表位於左側菜單欄下的計算/描述性統計部分的 Pandas 文檔。

09

數據可視化(圖表/圖形)

數據可視化是一個非常強大的工具 – 它允許你以可理解的格式與其他人分享你獲得的見解。畢竟,一張照片值得一千字。SQL 和 Excel 都具有將查詢轉換為圖表和圖形的功能。使用 seaborn 和 matplotlib 庫,你可以使用 Python 執行相同操作。

有關數據可視化選項的綜合的教程 – 我最喜歡的是這個 Github readme document (全部在文本中),它解釋瞭如何在 Seaborn 中構建概率分佈和各種各樣的圖。這應該讓你瞭解 Python 中數據可視化的強大功能。如果你感到不知所措,你可以使用一些解決方案,如Plot.ly,這可能更直觀地掌握。

我們不會檢查每一個數據可視化選項,只要說使用 Python,可以比任何 SQL 提供的功能具有更強大的可視化功能,必須權衡 使用 Python 獲得更多的靈活性 ,以及在 Excel 中通過模板生成圖表的簡易性。

在這種情況下,我們將建立一個簡單的直方圖,顯示人均 GDP 超過 5 萬美元的國家的人均 GDP 分佈。

用Python執行SQL、Excel常見任務?10個方法全搞定

有了這個強大的直方圖方法 (hist()),我們現在可以生成一個直方圖,顯示出大部分人均 GDP 在 5 萬到 7 萬美元之間!

10

分組和連接數據

在 Excel 和 SQL 中,諸如 JOIN 方法和數據透視表之類的強大工具可以快速彙總數據。

Pandas 和 Python 共享了許多從 SQL 和 Excel 被移植的相同方法。可以在 數據集中對數據進行分組,並將不同的數據集連接在一起。 你可以看看這裡的文檔。你會發現,由 Pandas 中的merge 方法提供的連接功能與 SQL 通過 join 命令提供的連接功能非常相似,而 Pandas 還為過去在 Excel 中使用數據透視表的人提供了 pivot table 方法。

我們將制定的人均 GDP 的表格與世界銀行的世界發展指數清單進行簡單的連接。

首先導入世界發展指數的 .csv文件。

使用 .head() 方法快速查看這個數據集中的不同列。

用Python執行SQL、Excel常見任務?10個方法全搞定

現在我們完成了,我們可以快速看看,添加了幾個可以操作的列,包括不同年份的數據來源。

現在我們來合併數據:

我們現在可以看到,這個表格包含了人均 GDP 列和具有不同列的遍及全國的數據。對於熟悉 SQL join 的用戶,你可以看到我們正在對原始 dataframe 的 Country 列進行內部連接。

用Python執行SQL、Excel常見任務?10個方法全搞定

現在我們有一個連接表,我們希望將國家和人均 GDP 按其所在地區進行分組。

我們現在可以使用 Pandas 中的 group 方法排列按區域分組的數據。

用Python執行SQL、Excel常見任務?10個方法全搞定

要是我們想看到 groupby 總結的永久觀點怎麼辦?Groupby 操作創建一個可以被操縱的臨時對象,但是它們不會創建一個永久接口來為構建聚合結果。為此,我們必須使用 Excel 用戶的舊喜愛:數據透視表。幸運的是,Pandas 擁有強大的數據透視表方法。

"

數據從業者有許多工具可用於分割數據。有些人使用 Excel,有些人使用SQL,有些人使用Python。對於某些任務,使用 Python 的優點是顯而易見的。以更快的速度處理更大的數據集。使用基於 Python 構建的開源機器學習庫。你可以輕鬆導入和導出不同格式的數據。

由於其多功能性,Python 可以成為任何數據分析師工具箱的重要組成部分。但是,這很難開始。大多數數據分析師可能熟悉 SQL 或 Excel。本篇是涉及幫助你 將技能和技術從 EXcel 和 SQL 轉移到 Python。

首先,讓我們來設置 Python。最簡單的方法就是使用 Jupyter Notebook 和 Anaconda。這個可視化界面將允許你插入 Python 代碼並立即查看輸出。這也將使你輕鬆跟隨本教程的其餘部分。

我強烈推薦使用 Anaconda,但這個初學者指南也將幫助你安裝 Python——儘管這將使本篇文章更加難以接受。

我們從基礎開始: 打開一個數據集。

01

Python資源共享群:484031800

導入數據

你可以導入.sql 數據庫並用 SQL 查詢中處理它們。在Excel中,你可以雙擊一個文件,然後在電子表格模式下開始處理它。在 Python 中,有更多複雜的特性,得益於能夠處理許多不同類型的文件格式和數據源的。

使用一個數據處理庫 Pandas,你可以使用 read 方法導入各種文件格式。使用這個方法所能導入完整的文件格式清單是在 Pandas 文檔中。你可以導入從 CSV 和 Excel 文件到 HTML 文件中的所有內容!

使用 Python 的最大優點之一是能夠從網絡的巨大範圍中獲取數據的能力,而不是隻能訪問手動下載的文件。在 Python 的requests 庫可以幫助你分類不同的網站,並從它們獲取數據,而 BeautifulSoup 庫可以幫助你處理和過濾數據,那麼你將精確得到你所需要的。如果你要去這條路線,請小心使用權問題。

在這個例子中,我們將獲取許多國家人均 GDP(一個技術術語,意思是一個國家的人均收入)的維基百科表格, 並在 Python 中使用 Pandas 庫對數據進行排序。

首先,導入我們需要的庫。


用Python執行SQL、Excel常見任務?10個方法全搞定


需要 Pandas 庫處理我們的數據。需要 numpy 庫來執行數值的操作和轉換。我們需要 requests 庫來從網站獲取 HTML 數據。需要 BeautifulSoup 來處理這些數據。最後,需要 Python(re)的正則表達式庫來更改在處理數據時將出現的某些字符串。

在 Python 中,不需要知道很多關於正則表達式的知識,但它們是一個強大的工具, 可用於匹配和替換某些字符串或子字符串。 如果你想了解更多,請參考以下內容。


用Python執行SQL、Excel常見任務?10個方法全搞定


02

信任這個網站的一些代碼

這是一個更具技術性的解釋,詳細說明如何使用 Python 代碼來獲取 HTML 表格。

你可以將上面的代碼複製粘貼到你自己的 Anaconda 中,如果你用一些 Python 代碼運行,可以迭代它!

下面是代碼的輸出,如果你不修改它,就是所謂的字典。


用Python執行SQL、Excel常見任務?10個方法全搞定


你會注意到逗號分隔起來的括號的 key-value 列表。每個括號內的列表都代表了我們 dataframe 中的一行,每列都以 key 表示:我們正在處理一個國家的排名,人均 GDP(以美元表示)及其名稱(用「國家」)。

有關數據結構,如列表和詞典,如何在 Python 中的運行的更多信息,本篇將有所幫助。

幸運的是,為了將數據移動到 Pandas dataframe 中,我們不需要理解這些數據, 這是將數據聚合到 SQL 表或 Excel 電子表格的類似方式。 使用一行代碼,我們已經將這些數據分配並保存到 Pandas dataframe 中 —— 事實證明是這種情況,字典是要轉換為 dataframe 的完美數據格式。

通過這個簡單的 Python 賦值給變量 gdp,我們現在有了一個 dataframe,可以在我們編寫 gdp 的時候打開和瀏覽。我們可以為該詞添加 Python 方法, 以創建其中的數據的策略視圖。 作為我們剛剛在 Python 中使用等號和賦值的一點深入瞭解,很有幫助。

03

快速查看數據

現在,如果要快速查看我們所做的工作,我們可以使用 head() 方法,它與 Excel 中的選擇幾行或SQL中的 LIMIT 方法非常相似。輕鬆地使用它來快速查看數據集,而無需加載整個數據集!如果要查看特定數量的行,還可以在 head() 方法中插入行數。


用Python執行SQL、Excel常見任務?10個方法全搞定


我們得到的輸出是人均 GDP 數據集的前五行(head 方法的默認值),我們可以看到它們整齊地排列成三列以及索引列。請注意, Python 索引從0開始,而不是1 ,這樣,如果要調用 dataframe 中的第一個值,則使用0而不是1!你可以通過在圓括號內添加你選擇的數字來更改顯示的行數。試試看!

04

重命名列

有一件你在 Python 中很快意識到的事是,具有某些特殊字符(例如$)的名稱處理可能變得非常麻煩。我們將要 重命名某些列 ,在 Excel 中,可以通過單擊列名稱並鍵入新名稱,在SQL中,你可以執行 ALTER TABLE 語句或使用 SQL Server 中的 sp_rename。

在 Pandas 中,這樣做的方式是rename 方法。

在實現上述方法時,我們將使用列標題 「gdp_per_capita」 替換列標題「US $」 。一個快速的 .head() 方法調用確認已經更改。


用Python執行SQL、Excel常見任務?10個方法全搞定


05

刪除列

有一些數據損壞!如果你查看 Rank 列,你會注意到散亂的隨機破折號。這不是很好,由於實際的數字順序被破壞,這使得 Rank 列無用,特別是使用 Pandas 默認提供的編號索引。

幸運的是,使用內置的 Python 方法: del ,刪除列變得很容易。

現在,通過另外調用 head 方法,我們可以確認 dataframe 不再包含 rank 列。


用Python執行SQL、Excel常見任務?10個方法全搞定


06

在列中轉換數據類型

有時,給定的數據類型很難使用。這個方便的教程將分解 Python 中不同數據類型之間的差異,以便你需要複習。

在 Excel 中,你可以右鍵單擊並找到將列數據轉換為不同類型的數據的方法。你可以複製一組由公式呈現的單元格,並將其粘貼為值,你可以使用格式選項快速切換數字,日期和字符串。

有時候,在 Python 中切換一種數據類型為其他數據類型並不容易,但當然有可能。

我們首先在 Python 中使用 re 庫。我們將使用 正則表達式來替換 gdp_per_capita 列中的逗號 ,以便我們可以更容易地使用該列。

re.sub 方法本質上是使用空格替換逗號。以下詳細介紹了 re庫 的各個方法。

現在我們已經刪除了逗號,我們可以輕易地將列轉換為數字。

現在我們可以計算這列的平均值。


用Python執行SQL、Excel常見任務?10個方法全搞定


我們可以看到,人均 GDP 的平均值約為13037.27美元,如果這列被判斷為字符串(不能執行算術運算),我們就無法做到這一點。現在,可以對我們以前不能做的人均 GDP 列進行各種計算,包括通過不同的值過濾列,並確定列的百分位數值。

07

選擇/過濾數據

任何數據分析師的基本需求是 將大型數據集分割成有價值的結果。 為了做到這一點,你必須檢查一部分數據:這對選擇和過濾數據是非常有幫助的。在 SQL 中,這是通過混合使用 SELECT 和不同的其他函數實現的,而在 Excel 中,可以通過拖放數據和執行過濾器來實現。

你可以使用 Pandas 庫不同的方法或查詢快速過濾。

作為一個快速的代表,只顯示人均 GDP 高於 5 萬美元的國家。

這是這樣做到的:

我們為一個新的 dataframe 分配一個布爾索引的過濾器,這個方法基本上就是說「創建一個人均 GDP 超過 50000 的新 dataframe」。現在我們可以顯示gdp50000。


用Python執行SQL、Excel常見任務?10個方法全搞定


有12個國家的 GDP 超過 50000!

選擇屬於以 s 開頭的國家的行。

現在可以顯示一個新 dataframe,其中只包含以 s 開頭的國家。使用 len 方法快速檢查(一個用於計算 dataframe 中的行數的救星!)表示我們有 25 個國家符合。


用Python執行SQL、Excel常見任務?10個方法全搞定


要是我們想把這兩個過濾條件連在一起呢?

這裡是連接過濾的方法。在多個過濾條件之前,你想要了解它的工作原理。你還需要了解 Python 中的基本操作符。為了這個練習的目的,你只需要知道 「&」代表 AND,而「|」代表 Python 中的 OR。 然而,通過更深入地瞭解所有基礎運算符,你可以用各種條件輕鬆地處理的數據。

讓我們繼續工作,並在過濾選擇以「S」開頭且有大於 50,000 人均 GDP 的國家。

用Python執行SQL、Excel常見任務?10個方法全搞定

現在過濾以「S」開頭 或人均 GDP 超過 50000 的國家。


用Python執行SQL、Excel常見任務?10個方法全搞定


我們正在努力處理 Pandas 中的過濾視圖。

用計算機來處理數據

沒有可以幫助計算不同的結果的方法,那麼 Excel 會變成什麼?

在這種情況下,Pandas 大量依賴於 numpy 庫和通用 Python 語法將計算放在一起。對我們一直在研究的 GDP 數據集進行一系列簡單的計算。例如,計算人均國民生產總值超過 5 萬的總和。

用Python執行SQL、Excel常見任務?10個方法全搞定

這將給你答案為 770046 。使用相同的邏輯,我們可以計算各種的值 — 完整列表位於左側菜單欄下的計算/描述性統計部分的 Pandas 文檔。

09

數據可視化(圖表/圖形)

數據可視化是一個非常強大的工具 – 它允許你以可理解的格式與其他人分享你獲得的見解。畢竟,一張照片值得一千字。SQL 和 Excel 都具有將查詢轉換為圖表和圖形的功能。使用 seaborn 和 matplotlib 庫,你可以使用 Python 執行相同操作。

有關數據可視化選項的綜合的教程 – 我最喜歡的是這個 Github readme document (全部在文本中),它解釋瞭如何在 Seaborn 中構建概率分佈和各種各樣的圖。這應該讓你瞭解 Python 中數據可視化的強大功能。如果你感到不知所措,你可以使用一些解決方案,如Plot.ly,這可能更直觀地掌握。

我們不會檢查每一個數據可視化選項,只要說使用 Python,可以比任何 SQL 提供的功能具有更強大的可視化功能,必須權衡 使用 Python 獲得更多的靈活性 ,以及在 Excel 中通過模板生成圖表的簡易性。

在這種情況下,我們將建立一個簡單的直方圖,顯示人均 GDP 超過 5 萬美元的國家的人均 GDP 分佈。

用Python執行SQL、Excel常見任務?10個方法全搞定

有了這個強大的直方圖方法 (hist()),我們現在可以生成一個直方圖,顯示出大部分人均 GDP 在 5 萬到 7 萬美元之間!

10

分組和連接數據

在 Excel 和 SQL 中,諸如 JOIN 方法和數據透視表之類的強大工具可以快速彙總數據。

Pandas 和 Python 共享了許多從 SQL 和 Excel 被移植的相同方法。可以在 數據集中對數據進行分組,並將不同的數據集連接在一起。 你可以看看這裡的文檔。你會發現,由 Pandas 中的merge 方法提供的連接功能與 SQL 通過 join 命令提供的連接功能非常相似,而 Pandas 還為過去在 Excel 中使用數據透視表的人提供了 pivot table 方法。

我們將制定的人均 GDP 的表格與世界銀行的世界發展指數清單進行簡單的連接。

首先導入世界發展指數的 .csv文件。

使用 .head() 方法快速查看這個數據集中的不同列。

用Python執行SQL、Excel常見任務?10個方法全搞定

現在我們完成了,我們可以快速看看,添加了幾個可以操作的列,包括不同年份的數據來源。

現在我們來合併數據:

我們現在可以看到,這個表格包含了人均 GDP 列和具有不同列的遍及全國的數據。對於熟悉 SQL join 的用戶,你可以看到我們正在對原始 dataframe 的 Country 列進行內部連接。

用Python執行SQL、Excel常見任務?10個方法全搞定

現在我們有一個連接表,我們希望將國家和人均 GDP 按其所在地區進行分組。

我們現在可以使用 Pandas 中的 group 方法排列按區域分組的數據。

用Python執行SQL、Excel常見任務?10個方法全搞定

要是我們想看到 groupby 總結的永久觀點怎麼辦?Groupby 操作創建一個可以被操縱的臨時對象,但是它們不會創建一個永久接口來為構建聚合結果。為此,我們必須使用 Excel 用戶的舊喜愛:數據透視表。幸運的是,Pandas 擁有強大的數據透視表方法。

用Python執行SQL、Excel常見任務?10個方法全搞定


"

數據從業者有許多工具可用於分割數據。有些人使用 Excel,有些人使用SQL,有些人使用Python。對於某些任務,使用 Python 的優點是顯而易見的。以更快的速度處理更大的數據集。使用基於 Python 構建的開源機器學習庫。你可以輕鬆導入和導出不同格式的數據。

由於其多功能性,Python 可以成為任何數據分析師工具箱的重要組成部分。但是,這很難開始。大多數數據分析師可能熟悉 SQL 或 Excel。本篇是涉及幫助你 將技能和技術從 EXcel 和 SQL 轉移到 Python。

首先,讓我們來設置 Python。最簡單的方法就是使用 Jupyter Notebook 和 Anaconda。這個可視化界面將允許你插入 Python 代碼並立即查看輸出。這也將使你輕鬆跟隨本教程的其餘部分。

我強烈推薦使用 Anaconda,但這個初學者指南也將幫助你安裝 Python——儘管這將使本篇文章更加難以接受。

我們從基礎開始: 打開一個數據集。

01

Python資源共享群:484031800

導入數據

你可以導入.sql 數據庫並用 SQL 查詢中處理它們。在Excel中,你可以雙擊一個文件,然後在電子表格模式下開始處理它。在 Python 中,有更多複雜的特性,得益於能夠處理許多不同類型的文件格式和數據源的。

使用一個數據處理庫 Pandas,你可以使用 read 方法導入各種文件格式。使用這個方法所能導入完整的文件格式清單是在 Pandas 文檔中。你可以導入從 CSV 和 Excel 文件到 HTML 文件中的所有內容!

使用 Python 的最大優點之一是能夠從網絡的巨大範圍中獲取數據的能力,而不是隻能訪問手動下載的文件。在 Python 的requests 庫可以幫助你分類不同的網站,並從它們獲取數據,而 BeautifulSoup 庫可以幫助你處理和過濾數據,那麼你將精確得到你所需要的。如果你要去這條路線,請小心使用權問題。

在這個例子中,我們將獲取許多國家人均 GDP(一個技術術語,意思是一個國家的人均收入)的維基百科表格, 並在 Python 中使用 Pandas 庫對數據進行排序。

首先,導入我們需要的庫。


用Python執行SQL、Excel常見任務?10個方法全搞定


需要 Pandas 庫處理我們的數據。需要 numpy 庫來執行數值的操作和轉換。我們需要 requests 庫來從網站獲取 HTML 數據。需要 BeautifulSoup 來處理這些數據。最後,需要 Python(re)的正則表達式庫來更改在處理數據時將出現的某些字符串。

在 Python 中,不需要知道很多關於正則表達式的知識,但它們是一個強大的工具, 可用於匹配和替換某些字符串或子字符串。 如果你想了解更多,請參考以下內容。


用Python執行SQL、Excel常見任務?10個方法全搞定


02

信任這個網站的一些代碼

這是一個更具技術性的解釋,詳細說明如何使用 Python 代碼來獲取 HTML 表格。

你可以將上面的代碼複製粘貼到你自己的 Anaconda 中,如果你用一些 Python 代碼運行,可以迭代它!

下面是代碼的輸出,如果你不修改它,就是所謂的字典。


用Python執行SQL、Excel常見任務?10個方法全搞定


你會注意到逗號分隔起來的括號的 key-value 列表。每個括號內的列表都代表了我們 dataframe 中的一行,每列都以 key 表示:我們正在處理一個國家的排名,人均 GDP(以美元表示)及其名稱(用「國家」)。

有關數據結構,如列表和詞典,如何在 Python 中的運行的更多信息,本篇將有所幫助。

幸運的是,為了將數據移動到 Pandas dataframe 中,我們不需要理解這些數據, 這是將數據聚合到 SQL 表或 Excel 電子表格的類似方式。 使用一行代碼,我們已經將這些數據分配並保存到 Pandas dataframe 中 —— 事實證明是這種情況,字典是要轉換為 dataframe 的完美數據格式。

通過這個簡單的 Python 賦值給變量 gdp,我們現在有了一個 dataframe,可以在我們編寫 gdp 的時候打開和瀏覽。我們可以為該詞添加 Python 方法, 以創建其中的數據的策略視圖。 作為我們剛剛在 Python 中使用等號和賦值的一點深入瞭解,很有幫助。

03

快速查看數據

現在,如果要快速查看我們所做的工作,我們可以使用 head() 方法,它與 Excel 中的選擇幾行或SQL中的 LIMIT 方法非常相似。輕鬆地使用它來快速查看數據集,而無需加載整個數據集!如果要查看特定數量的行,還可以在 head() 方法中插入行數。


用Python執行SQL、Excel常見任務?10個方法全搞定


我們得到的輸出是人均 GDP 數據集的前五行(head 方法的默認值),我們可以看到它們整齊地排列成三列以及索引列。請注意, Python 索引從0開始,而不是1 ,這樣,如果要調用 dataframe 中的第一個值,則使用0而不是1!你可以通過在圓括號內添加你選擇的數字來更改顯示的行數。試試看!

04

重命名列

有一件你在 Python 中很快意識到的事是,具有某些特殊字符(例如$)的名稱處理可能變得非常麻煩。我們將要 重命名某些列 ,在 Excel 中,可以通過單擊列名稱並鍵入新名稱,在SQL中,你可以執行 ALTER TABLE 語句或使用 SQL Server 中的 sp_rename。

在 Pandas 中,這樣做的方式是rename 方法。

在實現上述方法時,我們將使用列標題 「gdp_per_capita」 替換列標題「US $」 。一個快速的 .head() 方法調用確認已經更改。


用Python執行SQL、Excel常見任務?10個方法全搞定


05

刪除列

有一些數據損壞!如果你查看 Rank 列,你會注意到散亂的隨機破折號。這不是很好,由於實際的數字順序被破壞,這使得 Rank 列無用,特別是使用 Pandas 默認提供的編號索引。

幸運的是,使用內置的 Python 方法: del ,刪除列變得很容易。

現在,通過另外調用 head 方法,我們可以確認 dataframe 不再包含 rank 列。


用Python執行SQL、Excel常見任務?10個方法全搞定


06

在列中轉換數據類型

有時,給定的數據類型很難使用。這個方便的教程將分解 Python 中不同數據類型之間的差異,以便你需要複習。

在 Excel 中,你可以右鍵單擊並找到將列數據轉換為不同類型的數據的方法。你可以複製一組由公式呈現的單元格,並將其粘貼為值,你可以使用格式選項快速切換數字,日期和字符串。

有時候,在 Python 中切換一種數據類型為其他數據類型並不容易,但當然有可能。

我們首先在 Python 中使用 re 庫。我們將使用 正則表達式來替換 gdp_per_capita 列中的逗號 ,以便我們可以更容易地使用該列。

re.sub 方法本質上是使用空格替換逗號。以下詳細介紹了 re庫 的各個方法。

現在我們已經刪除了逗號,我們可以輕易地將列轉換為數字。

現在我們可以計算這列的平均值。


用Python執行SQL、Excel常見任務?10個方法全搞定


我們可以看到,人均 GDP 的平均值約為13037.27美元,如果這列被判斷為字符串(不能執行算術運算),我們就無法做到這一點。現在,可以對我們以前不能做的人均 GDP 列進行各種計算,包括通過不同的值過濾列,並確定列的百分位數值。

07

選擇/過濾數據

任何數據分析師的基本需求是 將大型數據集分割成有價值的結果。 為了做到這一點,你必須檢查一部分數據:這對選擇和過濾數據是非常有幫助的。在 SQL 中,這是通過混合使用 SELECT 和不同的其他函數實現的,而在 Excel 中,可以通過拖放數據和執行過濾器來實現。

你可以使用 Pandas 庫不同的方法或查詢快速過濾。

作為一個快速的代表,只顯示人均 GDP 高於 5 萬美元的國家。

這是這樣做到的:

我們為一個新的 dataframe 分配一個布爾索引的過濾器,這個方法基本上就是說「創建一個人均 GDP 超過 50000 的新 dataframe」。現在我們可以顯示gdp50000。


用Python執行SQL、Excel常見任務?10個方法全搞定


有12個國家的 GDP 超過 50000!

選擇屬於以 s 開頭的國家的行。

現在可以顯示一個新 dataframe,其中只包含以 s 開頭的國家。使用 len 方法快速檢查(一個用於計算 dataframe 中的行數的救星!)表示我們有 25 個國家符合。


用Python執行SQL、Excel常見任務?10個方法全搞定


要是我們想把這兩個過濾條件連在一起呢?

這裡是連接過濾的方法。在多個過濾條件之前,你想要了解它的工作原理。你還需要了解 Python 中的基本操作符。為了這個練習的目的,你只需要知道 「&」代表 AND,而「|」代表 Python 中的 OR。 然而,通過更深入地瞭解所有基礎運算符,你可以用各種條件輕鬆地處理的數據。

讓我們繼續工作,並在過濾選擇以「S」開頭且有大於 50,000 人均 GDP 的國家。

用Python執行SQL、Excel常見任務?10個方法全搞定

現在過濾以「S」開頭 或人均 GDP 超過 50000 的國家。


用Python執行SQL、Excel常見任務?10個方法全搞定


我們正在努力處理 Pandas 中的過濾視圖。

用計算機來處理數據

沒有可以幫助計算不同的結果的方法,那麼 Excel 會變成什麼?

在這種情況下,Pandas 大量依賴於 numpy 庫和通用 Python 語法將計算放在一起。對我們一直在研究的 GDP 數據集進行一系列簡單的計算。例如,計算人均國民生產總值超過 5 萬的總和。

用Python執行SQL、Excel常見任務?10個方法全搞定

這將給你答案為 770046 。使用相同的邏輯,我們可以計算各種的值 — 完整列表位於左側菜單欄下的計算/描述性統計部分的 Pandas 文檔。

09

數據可視化(圖表/圖形)

數據可視化是一個非常強大的工具 – 它允許你以可理解的格式與其他人分享你獲得的見解。畢竟,一張照片值得一千字。SQL 和 Excel 都具有將查詢轉換為圖表和圖形的功能。使用 seaborn 和 matplotlib 庫,你可以使用 Python 執行相同操作。

有關數據可視化選項的綜合的教程 – 我最喜歡的是這個 Github readme document (全部在文本中),它解釋瞭如何在 Seaborn 中構建概率分佈和各種各樣的圖。這應該讓你瞭解 Python 中數據可視化的強大功能。如果你感到不知所措,你可以使用一些解決方案,如Plot.ly,這可能更直觀地掌握。

我們不會檢查每一個數據可視化選項,只要說使用 Python,可以比任何 SQL 提供的功能具有更強大的可視化功能,必須權衡 使用 Python 獲得更多的靈活性 ,以及在 Excel 中通過模板生成圖表的簡易性。

在這種情況下,我們將建立一個簡單的直方圖,顯示人均 GDP 超過 5 萬美元的國家的人均 GDP 分佈。

用Python執行SQL、Excel常見任務?10個方法全搞定

有了這個強大的直方圖方法 (hist()),我們現在可以生成一個直方圖,顯示出大部分人均 GDP 在 5 萬到 7 萬美元之間!

10

分組和連接數據

在 Excel 和 SQL 中,諸如 JOIN 方法和數據透視表之類的強大工具可以快速彙總數據。

Pandas 和 Python 共享了許多從 SQL 和 Excel 被移植的相同方法。可以在 數據集中對數據進行分組,並將不同的數據集連接在一起。 你可以看看這裡的文檔。你會發現,由 Pandas 中的merge 方法提供的連接功能與 SQL 通過 join 命令提供的連接功能非常相似,而 Pandas 還為過去在 Excel 中使用數據透視表的人提供了 pivot table 方法。

我們將制定的人均 GDP 的表格與世界銀行的世界發展指數清單進行簡單的連接。

首先導入世界發展指數的 .csv文件。

使用 .head() 方法快速查看這個數據集中的不同列。

用Python執行SQL、Excel常見任務?10個方法全搞定

現在我們完成了,我們可以快速看看,添加了幾個可以操作的列,包括不同年份的數據來源。

現在我們來合併數據:

我們現在可以看到,這個表格包含了人均 GDP 列和具有不同列的遍及全國的數據。對於熟悉 SQL join 的用戶,你可以看到我們正在對原始 dataframe 的 Country 列進行內部連接。

用Python執行SQL、Excel常見任務?10個方法全搞定

現在我們有一個連接表,我們希望將國家和人均 GDP 按其所在地區進行分組。

我們現在可以使用 Pandas 中的 group 方法排列按區域分組的數據。

用Python執行SQL、Excel常見任務?10個方法全搞定

要是我們想看到 groupby 總結的永久觀點怎麼辦?Groupby 操作創建一個可以被操縱的臨時對象,但是它們不會創建一個永久接口來為構建聚合結果。為此,我們必須使用 Excel 用戶的舊喜愛:數據透視表。幸運的是,Pandas 擁有強大的數據透視表方法。

用Python執行SQL、Excel常見任務?10個方法全搞定


用Python執行SQL、Excel常見任務?10個方法全搞定


你會看到我們收集了一些不需要的列。幸運的是,使用 Pandas 中的 drop 方法,你可以輕鬆地刪除幾列。


"

數據從業者有許多工具可用於分割數據。有些人使用 Excel,有些人使用SQL,有些人使用Python。對於某些任務,使用 Python 的優點是顯而易見的。以更快的速度處理更大的數據集。使用基於 Python 構建的開源機器學習庫。你可以輕鬆導入和導出不同格式的數據。

由於其多功能性,Python 可以成為任何數據分析師工具箱的重要組成部分。但是,這很難開始。大多數數據分析師可能熟悉 SQL 或 Excel。本篇是涉及幫助你 將技能和技術從 EXcel 和 SQL 轉移到 Python。

首先,讓我們來設置 Python。最簡單的方法就是使用 Jupyter Notebook 和 Anaconda。這個可視化界面將允許你插入 Python 代碼並立即查看輸出。這也將使你輕鬆跟隨本教程的其餘部分。

我強烈推薦使用 Anaconda,但這個初學者指南也將幫助你安裝 Python——儘管這將使本篇文章更加難以接受。

我們從基礎開始: 打開一個數據集。

01

Python資源共享群:484031800

導入數據

你可以導入.sql 數據庫並用 SQL 查詢中處理它們。在Excel中,你可以雙擊一個文件,然後在電子表格模式下開始處理它。在 Python 中,有更多複雜的特性,得益於能夠處理許多不同類型的文件格式和數據源的。

使用一個數據處理庫 Pandas,你可以使用 read 方法導入各種文件格式。使用這個方法所能導入完整的文件格式清單是在 Pandas 文檔中。你可以導入從 CSV 和 Excel 文件到 HTML 文件中的所有內容!

使用 Python 的最大優點之一是能夠從網絡的巨大範圍中獲取數據的能力,而不是隻能訪問手動下載的文件。在 Python 的requests 庫可以幫助你分類不同的網站,並從它們獲取數據,而 BeautifulSoup 庫可以幫助你處理和過濾數據,那麼你將精確得到你所需要的。如果你要去這條路線,請小心使用權問題。

在這個例子中,我們將獲取許多國家人均 GDP(一個技術術語,意思是一個國家的人均收入)的維基百科表格, 並在 Python 中使用 Pandas 庫對數據進行排序。

首先,導入我們需要的庫。


用Python執行SQL、Excel常見任務?10個方法全搞定


需要 Pandas 庫處理我們的數據。需要 numpy 庫來執行數值的操作和轉換。我們需要 requests 庫來從網站獲取 HTML 數據。需要 BeautifulSoup 來處理這些數據。最後,需要 Python(re)的正則表達式庫來更改在處理數據時將出現的某些字符串。

在 Python 中,不需要知道很多關於正則表達式的知識,但它們是一個強大的工具, 可用於匹配和替換某些字符串或子字符串。 如果你想了解更多,請參考以下內容。


用Python執行SQL、Excel常見任務?10個方法全搞定


02

信任這個網站的一些代碼

這是一個更具技術性的解釋,詳細說明如何使用 Python 代碼來獲取 HTML 表格。

你可以將上面的代碼複製粘貼到你自己的 Anaconda 中,如果你用一些 Python 代碼運行,可以迭代它!

下面是代碼的輸出,如果你不修改它,就是所謂的字典。


用Python執行SQL、Excel常見任務?10個方法全搞定


你會注意到逗號分隔起來的括號的 key-value 列表。每個括號內的列表都代表了我們 dataframe 中的一行,每列都以 key 表示:我們正在處理一個國家的排名,人均 GDP(以美元表示)及其名稱(用「國家」)。

有關數據結構,如列表和詞典,如何在 Python 中的運行的更多信息,本篇將有所幫助。

幸運的是,為了將數據移動到 Pandas dataframe 中,我們不需要理解這些數據, 這是將數據聚合到 SQL 表或 Excel 電子表格的類似方式。 使用一行代碼,我們已經將這些數據分配並保存到 Pandas dataframe 中 —— 事實證明是這種情況,字典是要轉換為 dataframe 的完美數據格式。

通過這個簡單的 Python 賦值給變量 gdp,我們現在有了一個 dataframe,可以在我們編寫 gdp 的時候打開和瀏覽。我們可以為該詞添加 Python 方法, 以創建其中的數據的策略視圖。 作為我們剛剛在 Python 中使用等號和賦值的一點深入瞭解,很有幫助。

03

快速查看數據

現在,如果要快速查看我們所做的工作,我們可以使用 head() 方法,它與 Excel 中的選擇幾行或SQL中的 LIMIT 方法非常相似。輕鬆地使用它來快速查看數據集,而無需加載整個數據集!如果要查看特定數量的行,還可以在 head() 方法中插入行數。


用Python執行SQL、Excel常見任務?10個方法全搞定


我們得到的輸出是人均 GDP 數據集的前五行(head 方法的默認值),我們可以看到它們整齊地排列成三列以及索引列。請注意, Python 索引從0開始,而不是1 ,這樣,如果要調用 dataframe 中的第一個值,則使用0而不是1!你可以通過在圓括號內添加你選擇的數字來更改顯示的行數。試試看!

04

重命名列

有一件你在 Python 中很快意識到的事是,具有某些特殊字符(例如$)的名稱處理可能變得非常麻煩。我們將要 重命名某些列 ,在 Excel 中,可以通過單擊列名稱並鍵入新名稱,在SQL中,你可以執行 ALTER TABLE 語句或使用 SQL Server 中的 sp_rename。

在 Pandas 中,這樣做的方式是rename 方法。

在實現上述方法時,我們將使用列標題 「gdp_per_capita」 替換列標題「US $」 。一個快速的 .head() 方法調用確認已經更改。


用Python執行SQL、Excel常見任務?10個方法全搞定


05

刪除列

有一些數據損壞!如果你查看 Rank 列,你會注意到散亂的隨機破折號。這不是很好,由於實際的數字順序被破壞,這使得 Rank 列無用,特別是使用 Pandas 默認提供的編號索引。

幸運的是,使用內置的 Python 方法: del ,刪除列變得很容易。

現在,通過另外調用 head 方法,我們可以確認 dataframe 不再包含 rank 列。


用Python執行SQL、Excel常見任務?10個方法全搞定


06

在列中轉換數據類型

有時,給定的數據類型很難使用。這個方便的教程將分解 Python 中不同數據類型之間的差異,以便你需要複習。

在 Excel 中,你可以右鍵單擊並找到將列數據轉換為不同類型的數據的方法。你可以複製一組由公式呈現的單元格,並將其粘貼為值,你可以使用格式選項快速切換數字,日期和字符串。

有時候,在 Python 中切換一種數據類型為其他數據類型並不容易,但當然有可能。

我們首先在 Python 中使用 re 庫。我們將使用 正則表達式來替換 gdp_per_capita 列中的逗號 ,以便我們可以更容易地使用該列。

re.sub 方法本質上是使用空格替換逗號。以下詳細介紹了 re庫 的各個方法。

現在我們已經刪除了逗號,我們可以輕易地將列轉換為數字。

現在我們可以計算這列的平均值。


用Python執行SQL、Excel常見任務?10個方法全搞定


我們可以看到,人均 GDP 的平均值約為13037.27美元,如果這列被判斷為字符串(不能執行算術運算),我們就無法做到這一點。現在,可以對我們以前不能做的人均 GDP 列進行各種計算,包括通過不同的值過濾列,並確定列的百分位數值。

07

選擇/過濾數據

任何數據分析師的基本需求是 將大型數據集分割成有價值的結果。 為了做到這一點,你必須檢查一部分數據:這對選擇和過濾數據是非常有幫助的。在 SQL 中,這是通過混合使用 SELECT 和不同的其他函數實現的,而在 Excel 中,可以通過拖放數據和執行過濾器來實現。

你可以使用 Pandas 庫不同的方法或查詢快速過濾。

作為一個快速的代表,只顯示人均 GDP 高於 5 萬美元的國家。

這是這樣做到的:

我們為一個新的 dataframe 分配一個布爾索引的過濾器,這個方法基本上就是說「創建一個人均 GDP 超過 50000 的新 dataframe」。現在我們可以顯示gdp50000。


用Python執行SQL、Excel常見任務?10個方法全搞定


有12個國家的 GDP 超過 50000!

選擇屬於以 s 開頭的國家的行。

現在可以顯示一個新 dataframe,其中只包含以 s 開頭的國家。使用 len 方法快速檢查(一個用於計算 dataframe 中的行數的救星!)表示我們有 25 個國家符合。


用Python執行SQL、Excel常見任務?10個方法全搞定


要是我們想把這兩個過濾條件連在一起呢?

這裡是連接過濾的方法。在多個過濾條件之前,你想要了解它的工作原理。你還需要了解 Python 中的基本操作符。為了這個練習的目的,你只需要知道 「&」代表 AND,而「|」代表 Python 中的 OR。 然而,通過更深入地瞭解所有基礎運算符,你可以用各種條件輕鬆地處理的數據。

讓我們繼續工作,並在過濾選擇以「S」開頭且有大於 50,000 人均 GDP 的國家。

用Python執行SQL、Excel常見任務?10個方法全搞定

現在過濾以「S」開頭 或人均 GDP 超過 50000 的國家。


用Python執行SQL、Excel常見任務?10個方法全搞定


我們正在努力處理 Pandas 中的過濾視圖。

用計算機來處理數據

沒有可以幫助計算不同的結果的方法,那麼 Excel 會變成什麼?

在這種情況下,Pandas 大量依賴於 numpy 庫和通用 Python 語法將計算放在一起。對我們一直在研究的 GDP 數據集進行一系列簡單的計算。例如,計算人均國民生產總值超過 5 萬的總和。

用Python執行SQL、Excel常見任務?10個方法全搞定

這將給你答案為 770046 。使用相同的邏輯,我們可以計算各種的值 — 完整列表位於左側菜單欄下的計算/描述性統計部分的 Pandas 文檔。

09

數據可視化(圖表/圖形)

數據可視化是一個非常強大的工具 – 它允許你以可理解的格式與其他人分享你獲得的見解。畢竟,一張照片值得一千字。SQL 和 Excel 都具有將查詢轉換為圖表和圖形的功能。使用 seaborn 和 matplotlib 庫,你可以使用 Python 執行相同操作。

有關數據可視化選項的綜合的教程 – 我最喜歡的是這個 Github readme document (全部在文本中),它解釋瞭如何在 Seaborn 中構建概率分佈和各種各樣的圖。這應該讓你瞭解 Python 中數據可視化的強大功能。如果你感到不知所措,你可以使用一些解決方案,如Plot.ly,這可能更直觀地掌握。

我們不會檢查每一個數據可視化選項,只要說使用 Python,可以比任何 SQL 提供的功能具有更強大的可視化功能,必須權衡 使用 Python 獲得更多的靈活性 ,以及在 Excel 中通過模板生成圖表的簡易性。

在這種情況下,我們將建立一個簡單的直方圖,顯示人均 GDP 超過 5 萬美元的國家的人均 GDP 分佈。

用Python執行SQL、Excel常見任務?10個方法全搞定

有了這個強大的直方圖方法 (hist()),我們現在可以生成一個直方圖,顯示出大部分人均 GDP 在 5 萬到 7 萬美元之間!

10

分組和連接數據

在 Excel 和 SQL 中,諸如 JOIN 方法和數據透視表之類的強大工具可以快速彙總數據。

Pandas 和 Python 共享了許多從 SQL 和 Excel 被移植的相同方法。可以在 數據集中對數據進行分組,並將不同的數據集連接在一起。 你可以看看這裡的文檔。你會發現,由 Pandas 中的merge 方法提供的連接功能與 SQL 通過 join 命令提供的連接功能非常相似,而 Pandas 還為過去在 Excel 中使用數據透視表的人提供了 pivot table 方法。

我們將制定的人均 GDP 的表格與世界銀行的世界發展指數清單進行簡單的連接。

首先導入世界發展指數的 .csv文件。

使用 .head() 方法快速查看這個數據集中的不同列。

用Python執行SQL、Excel常見任務?10個方法全搞定

現在我們完成了,我們可以快速看看,添加了幾個可以操作的列,包括不同年份的數據來源。

現在我們來合併數據:

我們現在可以看到,這個表格包含了人均 GDP 列和具有不同列的遍及全國的數據。對於熟悉 SQL join 的用戶,你可以看到我們正在對原始 dataframe 的 Country 列進行內部連接。

用Python執行SQL、Excel常見任務?10個方法全搞定

現在我們有一個連接表,我們希望將國家和人均 GDP 按其所在地區進行分組。

我們現在可以使用 Pandas 中的 group 方法排列按區域分組的數據。

用Python執行SQL、Excel常見任務?10個方法全搞定

要是我們想看到 groupby 總結的永久觀點怎麼辦?Groupby 操作創建一個可以被操縱的臨時對象,但是它們不會創建一個永久接口來為構建聚合結果。為此,我們必須使用 Excel 用戶的舊喜愛:數據透視表。幸運的是,Pandas 擁有強大的數據透視表方法。

用Python執行SQL、Excel常見任務?10個方法全搞定


用Python執行SQL、Excel常見任務?10個方法全搞定


你會看到我們收集了一些不需要的列。幸運的是,使用 Pandas 中的 drop 方法,你可以輕鬆地刪除幾列。


用Python執行SQL、Excel常見任務?10個方法全搞定


"

數據從業者有許多工具可用於分割數據。有些人使用 Excel,有些人使用SQL,有些人使用Python。對於某些任務,使用 Python 的優點是顯而易見的。以更快的速度處理更大的數據集。使用基於 Python 構建的開源機器學習庫。你可以輕鬆導入和導出不同格式的數據。

由於其多功能性,Python 可以成為任何數據分析師工具箱的重要組成部分。但是,這很難開始。大多數數據分析師可能熟悉 SQL 或 Excel。本篇是涉及幫助你 將技能和技術從 EXcel 和 SQL 轉移到 Python。

首先,讓我們來設置 Python。最簡單的方法就是使用 Jupyter Notebook 和 Anaconda。這個可視化界面將允許你插入 Python 代碼並立即查看輸出。這也將使你輕鬆跟隨本教程的其餘部分。

我強烈推薦使用 Anaconda,但這個初學者指南也將幫助你安裝 Python——儘管這將使本篇文章更加難以接受。

我們從基礎開始: 打開一個數據集。

01

Python資源共享群:484031800

導入數據

你可以導入.sql 數據庫並用 SQL 查詢中處理它們。在Excel中,你可以雙擊一個文件,然後在電子表格模式下開始處理它。在 Python 中,有更多複雜的特性,得益於能夠處理許多不同類型的文件格式和數據源的。

使用一個數據處理庫 Pandas,你可以使用 read 方法導入各種文件格式。使用這個方法所能導入完整的文件格式清單是在 Pandas 文檔中。你可以導入從 CSV 和 Excel 文件到 HTML 文件中的所有內容!

使用 Python 的最大優點之一是能夠從網絡的巨大範圍中獲取數據的能力,而不是隻能訪問手動下載的文件。在 Python 的requests 庫可以幫助你分類不同的網站,並從它們獲取數據,而 BeautifulSoup 庫可以幫助你處理和過濾數據,那麼你將精確得到你所需要的。如果你要去這條路線,請小心使用權問題。

在這個例子中,我們將獲取許多國家人均 GDP(一個技術術語,意思是一個國家的人均收入)的維基百科表格, 並在 Python 中使用 Pandas 庫對數據進行排序。

首先,導入我們需要的庫。


用Python執行SQL、Excel常見任務?10個方法全搞定


需要 Pandas 庫處理我們的數據。需要 numpy 庫來執行數值的操作和轉換。我們需要 requests 庫來從網站獲取 HTML 數據。需要 BeautifulSoup 來處理這些數據。最後,需要 Python(re)的正則表達式庫來更改在處理數據時將出現的某些字符串。

在 Python 中,不需要知道很多關於正則表達式的知識,但它們是一個強大的工具, 可用於匹配和替換某些字符串或子字符串。 如果你想了解更多,請參考以下內容。


用Python執行SQL、Excel常見任務?10個方法全搞定


02

信任這個網站的一些代碼

這是一個更具技術性的解釋,詳細說明如何使用 Python 代碼來獲取 HTML 表格。

你可以將上面的代碼複製粘貼到你自己的 Anaconda 中,如果你用一些 Python 代碼運行,可以迭代它!

下面是代碼的輸出,如果你不修改它,就是所謂的字典。


用Python執行SQL、Excel常見任務?10個方法全搞定


你會注意到逗號分隔起來的括號的 key-value 列表。每個括號內的列表都代表了我們 dataframe 中的一行,每列都以 key 表示:我們正在處理一個國家的排名,人均 GDP(以美元表示)及其名稱(用「國家」)。

有關數據結構,如列表和詞典,如何在 Python 中的運行的更多信息,本篇將有所幫助。

幸運的是,為了將數據移動到 Pandas dataframe 中,我們不需要理解這些數據, 這是將數據聚合到 SQL 表或 Excel 電子表格的類似方式。 使用一行代碼,我們已經將這些數據分配並保存到 Pandas dataframe 中 —— 事實證明是這種情況,字典是要轉換為 dataframe 的完美數據格式。

通過這個簡單的 Python 賦值給變量 gdp,我們現在有了一個 dataframe,可以在我們編寫 gdp 的時候打開和瀏覽。我們可以為該詞添加 Python 方法, 以創建其中的數據的策略視圖。 作為我們剛剛在 Python 中使用等號和賦值的一點深入瞭解,很有幫助。

03

快速查看數據

現在,如果要快速查看我們所做的工作,我們可以使用 head() 方法,它與 Excel 中的選擇幾行或SQL中的 LIMIT 方法非常相似。輕鬆地使用它來快速查看數據集,而無需加載整個數據集!如果要查看特定數量的行,還可以在 head() 方法中插入行數。


用Python執行SQL、Excel常見任務?10個方法全搞定


我們得到的輸出是人均 GDP 數據集的前五行(head 方法的默認值),我們可以看到它們整齊地排列成三列以及索引列。請注意, Python 索引從0開始,而不是1 ,這樣,如果要調用 dataframe 中的第一個值,則使用0而不是1!你可以通過在圓括號內添加你選擇的數字來更改顯示的行數。試試看!

04

重命名列

有一件你在 Python 中很快意識到的事是,具有某些特殊字符(例如$)的名稱處理可能變得非常麻煩。我們將要 重命名某些列 ,在 Excel 中,可以通過單擊列名稱並鍵入新名稱,在SQL中,你可以執行 ALTER TABLE 語句或使用 SQL Server 中的 sp_rename。

在 Pandas 中,這樣做的方式是rename 方法。

在實現上述方法時,我們將使用列標題 「gdp_per_capita」 替換列標題「US $」 。一個快速的 .head() 方法調用確認已經更改。


用Python執行SQL、Excel常見任務?10個方法全搞定


05

刪除列

有一些數據損壞!如果你查看 Rank 列,你會注意到散亂的隨機破折號。這不是很好,由於實際的數字順序被破壞,這使得 Rank 列無用,特別是使用 Pandas 默認提供的編號索引。

幸運的是,使用內置的 Python 方法: del ,刪除列變得很容易。

現在,通過另外調用 head 方法,我們可以確認 dataframe 不再包含 rank 列。


用Python執行SQL、Excel常見任務?10個方法全搞定


06

在列中轉換數據類型

有時,給定的數據類型很難使用。這個方便的教程將分解 Python 中不同數據類型之間的差異,以便你需要複習。

在 Excel 中,你可以右鍵單擊並找到將列數據轉換為不同類型的數據的方法。你可以複製一組由公式呈現的單元格,並將其粘貼為值,你可以使用格式選項快速切換數字,日期和字符串。

有時候,在 Python 中切換一種數據類型為其他數據類型並不容易,但當然有可能。

我們首先在 Python 中使用 re 庫。我們將使用 正則表達式來替換 gdp_per_capita 列中的逗號 ,以便我們可以更容易地使用該列。

re.sub 方法本質上是使用空格替換逗號。以下詳細介紹了 re庫 的各個方法。

現在我們已經刪除了逗號,我們可以輕易地將列轉換為數字。

現在我們可以計算這列的平均值。


用Python執行SQL、Excel常見任務?10個方法全搞定


我們可以看到,人均 GDP 的平均值約為13037.27美元,如果這列被判斷為字符串(不能執行算術運算),我們就無法做到這一點。現在,可以對我們以前不能做的人均 GDP 列進行各種計算,包括通過不同的值過濾列,並確定列的百分位數值。

07

選擇/過濾數據

任何數據分析師的基本需求是 將大型數據集分割成有價值的結果。 為了做到這一點,你必須檢查一部分數據:這對選擇和過濾數據是非常有幫助的。在 SQL 中,這是通過混合使用 SELECT 和不同的其他函數實現的,而在 Excel 中,可以通過拖放數據和執行過濾器來實現。

你可以使用 Pandas 庫不同的方法或查詢快速過濾。

作為一個快速的代表,只顯示人均 GDP 高於 5 萬美元的國家。

這是這樣做到的:

我們為一個新的 dataframe 分配一個布爾索引的過濾器,這個方法基本上就是說「創建一個人均 GDP 超過 50000 的新 dataframe」。現在我們可以顯示gdp50000。


用Python執行SQL、Excel常見任務?10個方法全搞定


有12個國家的 GDP 超過 50000!

選擇屬於以 s 開頭的國家的行。

現在可以顯示一個新 dataframe,其中只包含以 s 開頭的國家。使用 len 方法快速檢查(一個用於計算 dataframe 中的行數的救星!)表示我們有 25 個國家符合。


用Python執行SQL、Excel常見任務?10個方法全搞定


要是我們想把這兩個過濾條件連在一起呢?

這裡是連接過濾的方法。在多個過濾條件之前,你想要了解它的工作原理。你還需要了解 Python 中的基本操作符。為了這個練習的目的,你只需要知道 「&」代表 AND,而「|」代表 Python 中的 OR。 然而,通過更深入地瞭解所有基礎運算符,你可以用各種條件輕鬆地處理的數據。

讓我們繼續工作,並在過濾選擇以「S」開頭且有大於 50,000 人均 GDP 的國家。

用Python執行SQL、Excel常見任務?10個方法全搞定

現在過濾以「S」開頭 或人均 GDP 超過 50000 的國家。


用Python執行SQL、Excel常見任務?10個方法全搞定


我們正在努力處理 Pandas 中的過濾視圖。

用計算機來處理數據

沒有可以幫助計算不同的結果的方法,那麼 Excel 會變成什麼?

在這種情況下,Pandas 大量依賴於 numpy 庫和通用 Python 語法將計算放在一起。對我們一直在研究的 GDP 數據集進行一系列簡單的計算。例如,計算人均國民生產總值超過 5 萬的總和。

用Python執行SQL、Excel常見任務?10個方法全搞定

這將給你答案為 770046 。使用相同的邏輯,我們可以計算各種的值 — 完整列表位於左側菜單欄下的計算/描述性統計部分的 Pandas 文檔。

09

數據可視化(圖表/圖形)

數據可視化是一個非常強大的工具 – 它允許你以可理解的格式與其他人分享你獲得的見解。畢竟,一張照片值得一千字。SQL 和 Excel 都具有將查詢轉換為圖表和圖形的功能。使用 seaborn 和 matplotlib 庫,你可以使用 Python 執行相同操作。

有關數據可視化選項的綜合的教程 – 我最喜歡的是這個 Github readme document (全部在文本中),它解釋瞭如何在 Seaborn 中構建概率分佈和各種各樣的圖。這應該讓你瞭解 Python 中數據可視化的強大功能。如果你感到不知所措,你可以使用一些解決方案,如Plot.ly,這可能更直觀地掌握。

我們不會檢查每一個數據可視化選項,只要說使用 Python,可以比任何 SQL 提供的功能具有更強大的可視化功能,必須權衡 使用 Python 獲得更多的靈活性 ,以及在 Excel 中通過模板生成圖表的簡易性。

在這種情況下,我們將建立一個簡單的直方圖,顯示人均 GDP 超過 5 萬美元的國家的人均 GDP 分佈。

用Python執行SQL、Excel常見任務?10個方法全搞定

有了這個強大的直方圖方法 (hist()),我們現在可以生成一個直方圖,顯示出大部分人均 GDP 在 5 萬到 7 萬美元之間!

10

分組和連接數據

在 Excel 和 SQL 中,諸如 JOIN 方法和數據透視表之類的強大工具可以快速彙總數據。

Pandas 和 Python 共享了許多從 SQL 和 Excel 被移植的相同方法。可以在 數據集中對數據進行分組,並將不同的數據集連接在一起。 你可以看看這裡的文檔。你會發現,由 Pandas 中的merge 方法提供的連接功能與 SQL 通過 join 命令提供的連接功能非常相似,而 Pandas 還為過去在 Excel 中使用數據透視表的人提供了 pivot table 方法。

我們將制定的人均 GDP 的表格與世界銀行的世界發展指數清單進行簡單的連接。

首先導入世界發展指數的 .csv文件。

使用 .head() 方法快速查看這個數據集中的不同列。

用Python執行SQL、Excel常見任務?10個方法全搞定

現在我們完成了,我們可以快速看看,添加了幾個可以操作的列,包括不同年份的數據來源。

現在我們來合併數據:

我們現在可以看到,這個表格包含了人均 GDP 列和具有不同列的遍及全國的數據。對於熟悉 SQL join 的用戶,你可以看到我們正在對原始 dataframe 的 Country 列進行內部連接。

用Python執行SQL、Excel常見任務?10個方法全搞定

現在我們有一個連接表,我們希望將國家和人均 GDP 按其所在地區進行分組。

我們現在可以使用 Pandas 中的 group 方法排列按區域分組的數據。

用Python執行SQL、Excel常見任務?10個方法全搞定

要是我們想看到 groupby 總結的永久觀點怎麼辦?Groupby 操作創建一個可以被操縱的臨時對象,但是它們不會創建一個永久接口來為構建聚合結果。為此,我們必須使用 Excel 用戶的舊喜愛:數據透視表。幸運的是,Pandas 擁有強大的數據透視表方法。

用Python執行SQL、Excel常見任務?10個方法全搞定


用Python執行SQL、Excel常見任務?10個方法全搞定


你會看到我們收集了一些不需要的列。幸運的是,使用 Pandas 中的 drop 方法,你可以輕鬆地刪除幾列。


用Python執行SQL、Excel常見任務?10個方法全搞定


用Python執行SQL、Excel常見任務?10個方法全搞定


現在我們可以看到,人均 GDP 根據世界不同地區而不同。我們有一個乾淨的、包含我們想要的數據的表。

這是一個非常膚淺的分析:你想實際做一個加權平均數,因為每個國家的人均 GDP 不代表一個群體中每個國家的人均 GDP,因為在群體中的人口不同。

事實上,你將要重複我們所有的計算,包括反映每個國家的人口列的方法!看看你是否可以在剛剛啟動的 Python notebook 中執行此操作。如果你可以弄清楚,你將會很好地將 SQL 或 Excel 知識轉移到 Python 中。

"

相關推薦

推薦中...