Jupyter+Docker玩轉《Python數據分析基礎》

近年來,數據分析師成爲了一個高薪而又熱門的職業,若是你想跨入這一行又沒什麼編程基礎,那麼學習Python絕對是一個好的選擇。由於Python的代碼風格使代碼更易於閱讀和理解,和其餘語言相比,其學習曲線沒有那麼陡峭。Python的一系列豐富的內建庫和附加庫能夠方便地完成許多通常的數據處理和分析操做,讓你能夠輕鬆地一站式完成數據處理與分析任務,從而大大減輕編程的工做量。python

Python數據分析基礎封面


開發環境搭建

若是你仍是一個不會編程的小白,那麼從安裝python到下載各類包再到運行起程序的整個過程都夠讓你喝一壺的了。《Python數據分析基礎》書中推薦了Anaconda Python,不過筆者認爲安裝Anaconda Python依然略顯繁瑣,下面是筆者總結的只須要三步就能玩轉《Python數據分析基礎》的具體步驟:docker

一、安裝Docker

Docker是什麼?可參考拙做《離不開的工具之Docker開發指南》,簡單講是一個用於環境封裝的工具(集裝箱)。若是沒精力去了解也不要緊,你只須要知道Docker用起來很方便就好了。Windows用戶 從https://www.docker.com/docker-windows下載,Mac用戶從https://www.docker.com/docker-mac下載,只需輕點Download Now from Docker Store按鈕,循序漸進的等待安裝完成便可。編程

二、下載jupyter/scipy-notebook的Docker鏡像

Jupyter是什麼?Jupyter是一個交互式筆記本(大名鼎鼎的 IPython notebook 是它的原名,大部分入門型的Python書裏都會提到它,本書也不例外)。用Jupyter寫代碼能夠自動補全,比記事本高到不知哪裏去了,每一段代碼(cell)的運行結果能能夠根據你的須要(代碼)以文字、表、圖等方式展示出來,並且會像真正的筆記本同樣把結果保留在頁面上,以便縱向對比。windows

然而Jupyter如今已經不僅是Python的編輯器這麼簡單了,實際上它支持40多種編程語言,好比R、Ruby、Javascript、C#、Go、Scala、Erlang、以及新興的Julia等…… ,根據任務和編程語言的不一樣,jupyter提供多種了預先打包好的官方鏡像(https://hub.docker.com/r/jupyter/),和數據分析和科學計算有關的主要有兩個鏡像:一、scipy-notebook(https://hub.docker.com/r/jupyter/scipy-notebook/),是純Python3.x環境;二、datascience-notebook(https://hub.docker.com/r/jupyter/datascience-notebook/)預裝了Python、R、Julia,適合更高級的混合式開發。對於本書而言,完成全部的教程只須要安裝scipy-notebook鏡像,該鏡像已經預裝了本書全部用到的數據分析庫。瀏覽器

介紹了這麼多,到底怎麼下載呢?其實很簡單,只須要敲入一行命令便可 ——服務器

docker pull jupyter/scipy-notebook編程語言

三、運行jupyter/scipy-notebook

用docker下載完 scipy-notebook 鏡像後,咱們敲入如下指令 ——編輯器

docker run -it --rm -p 8888:8888 jupyter/scipy-notebook工具

稍等一下,就會給出提示:學習

Copy/paste this URL into your browser when you connect for the first time, to login with a token:

http://localhost:8888/?token=84222a835fff50f7sssss9c8bb4a45a2e13dd387a86zzz

咱們這時候只須要把最後那一行地址拷貝到瀏覽器,就能夠見到一個搭建好的交互式Python數據分析開發環境了!是否是很簡單?


數據分析起步

一、第一行程序

如圖所示,在Jupyter右側菜單的New下選擇Python3 第一步:打開python命令行

會自動進入Python的命令行交互環境,咱們試着敲入第一行代碼,而後點擊工具條上的 '⏯ Run'按鈕,立刻就能夠看到執行結果。 第一行代碼


二、讀文件

數據分析的數據來源有很大頭是各類類型的文件,從文件中讀取數據是基本功,咱們先嚐試本身讀一個本身編寫的文件:

  • (1)在Jupyter主入口的Files選項卡上選擇 New -> Text File ,輸入幾行文字,再選擇 File -> Save,會在主目錄下看到一個 'untitled.txt' 文件,這就是你剛編輯過的文件,選擇該文件,再在工具欄選擇 Rename,能夠修改其名稱,咱們把這個文件更名爲 'abc.txt'enter image description here
  • (2)在程序交互區域,輸入以下代碼 ——

input_file = 'abc.txt'

print("Output #144:")

with open(input_file, 'r', newline='') as filereader:

for row in filereader:

    print("{}".format(row.strip()))
  • (3)點擊 'Run'按鈕,就能夠獲得以下結果 程序1

三、上傳並處理csv文件

  • (1)咱們按第二章開頭提供的地址,獲取一個名爲supplier_data.csv的文件
  • (2)在Jupyter主入口的Files選項卡上選擇 Upload,會彈出文件選擇對話框,選好要上傳的文件,再點擊upload,便可將指定文件傳到Jupyter「服務器」上。 上傳
  • (3)在程序交互區,輸入以下代碼

import sys import pandas as pd

input_file = 'supplier_data.csv'

output_file = 'abc.csv'

data_frame = pd.read_csv(input_file)

print(data_frame)

data_frame.to_csv(output_file, index=False)

  • (4)點擊 'Run'按鈕,就能夠看到格式化好的數據。而且在Jupyter的文件區咱們還能夠看到一個新生成的文件'abc.csv' 程序2

四、用matplotlib繪製圖表📈

數據的可視化是咱們作數據分析的重要組成部分,用Jupyter + matplotlib也能夠輕鬆的完成這一工做。 咱們在交互區輸入第6章6.1.3中的代碼,點擊 'Run'按鈕,一幅漂亮的折線圖就產生了。 程序3


總結:《Python數據分析基礎》確實書如其名,很是的基礎,能夠把一個程序小白,手把手的帶入數據分析的世界。

而咱們利用Jupyter+Docker能夠更加省去不少繁瑣的安裝/配置環節,更快的實現Python數據分析入門。

相關文章
相關標籤/搜索