1.2 Python數據分析工具
越來越多的人開始使用Python語言開展數據分析工作,與統計分析專業工具R語言和矩陣計算專業工具Matlab相比,Python包含了數據分析過程需要的所有方法和工具,具有速度優勢,能夠支持大數據處理。Python通過多個開源的第三方工具包來實現數據分析,能夠緊跟新技術發展,已成為數據科學的首選工具。
使用Python實現數據分析過程,工作人員重點關注分析的技術和方法,無須耗費大量精力掌握復雜的軟件編程技術,代碼量少,適用于初學者,同樣也適用于專家。
1.2.1 科學計算集成環境Anaconda
Python是一個開源的、跨平臺的編程語言,官方網站提供了針對各個平臺的安裝包(http://www.python.org/downloads),包含基礎的Python編程環境,以及基礎的方法庫。使用Python分析數據,需要安裝相關的第三方工具包(通過Python的pip命令逐個安裝)。本書推薦使用Python的科學計算發行版Anaconda(開源),它是一個跨平臺的版本,支持Windows、Linux、MacOS等平臺,包括近200個工具包,常見的NumPy、SciPy、pandas、Matplotlib、scikit-learn、NLTK等庫都已經包含其中,滿足了數據分析的基本需求。
Anaconda可以在官方網站中(https://www.anaconda.com/download)下載,也可以到國內的鏡像網站中下載(如https://mirrors.tuna.tsinghua.edu.cn/help/anaconda)。本書代碼統一遵循Python 3語法,推薦安裝Anaconda3-5.0.1及以上版本。
在Windows平臺上安裝完成后,在“程序”列表中將添加Anaconda3程序組,如圖1-4所示,其中包含多個應用程序。Anaconda Navigator提供第三方工具包的管理工具,Anaconda Prompt是命令行工具,Jupyter Notebook是交互式筆記本(詳見1.2.3節),Spyder是一個集成開發環境。

圖1-4 Anaconda3程序組
1.2.2 Python編譯環境
Python有很多功能豐富的集成開發環境,如IDLE、Pycharm、Spyder等,本書采用IDLE,它是一款輕量級的交互式解釋環境,只要安裝了Python解釋器就會附帶。打開Anaconda Prompt,進入命令行界面,如圖1-5(a)所示。然后輸入IDLE命令,即可打開Python的Shell界面,如圖1-5(b)所示。

圖1-5 IDLE交互式界面
IDLE可以逐條運行代碼,也可以創建、編輯Python源代碼文件,運行完整的程序。在圖1-5中,在命令提示符“>>>”后輸入語句并回車,下一行藍色的字體表示代碼執行結果;單擊“File”菜單的“Open”或“New File”即可進入源代碼編輯界面,如圖1-6所示。

圖1-6 源文件編輯與調試界面
程序編輯完成后,單擊“Run”菜單的“Run Module”,即可運行解釋并執行代碼,代碼執行的交互顯示在Shell界面。
1.2.3 Jupyter Notebook
Jupyter Notebook是一個基于Web的交互式筆記本,其主要特點是易于“講故事”。它將程序存放在一個文件中,但可以分割成多個片段運行展示,可以實現:
● 查看算法每步運行的中間結果;
● 反復修改、運行代碼片段;
● 存儲中間結果,并修改;
● 展示代碼成果(可以是文本、代碼和圖像等形式)。
在Anaconda3程序組中單擊Jupyter Notebook,啟動操作系統默認的瀏覽器,打開Jupyter應用程序,如圖1-7所示。

圖1-7 Jupyter Notebook Web界面
單擊“New”菜單的“Python 3”,打開一個新窗口,就可以創作自己的Notebook了,文件后綴名為“.ipynb”,如圖1-8所示。窗口下部由可以編寫代碼的單元(cell)組成。單元“In[n]:”(n為單元執行的序號)里面既可以存放一段文本,也可以存放一段代碼。選中某個單元,單擊工具欄的“”,即可運行該單元的代碼。結果在此單元下方顯示,用“Out[n]:”表示。

圖1-8 Jupyter Notebook文本編輯界面
當某個單元運行后,其運行結果會被保留下來,后面的單元運行時,將繼承前面的運行結果,可以訪問、修改前面的變量值。
單擊“File”菜單的“Rename”,可以為Notebook文件重新命名。