0基礎包教會 | 數據分析環境搭建:jupyter配置python & r kernel
前言
作為一個沒有妹子的單身狗,業餘時間寂寞難耐,於是便走上了折騰各種工具的不歸路。作為拍腦袋的結果,數據分析是我認為最為適宜的方向。本專欄當前主要計劃分享一些我在數據分析相關的工具上踩過的坑,希望能對諸位讀者有所助益。由於學識和眼界有限,不免會有疏漏不妥之處,歡迎各位讀者批評指正。
第一篇為當前(我親自認證(/▽\))最為便利的數據分析環境 Jupyter Notebook 的環境搭建指南,面向0基礎群眾。
目錄(*部分選讀,不影響主要內容)
- 簡介
- 準備軟體包及安裝
- 配置
- 包管理
- 進一步了解*
- 美化*
- 最終成果
簡介
為什麼選擇Jupyter
The Jupyter Notebook is an open-source web application that allows you to create and share documents that contain live code, equations, visualizations and explanatory text. Uses include: data cleaning and transformation, numerical simulation, statistical modeling, machine learning and much more.
官網上的介紹非常清晰,就我個人而言,我選擇她的原因有:
1. python & r ... 全功能
2 . 互動式的編輯界面
3. 好看
4. 好看
5. 好看
* 但是...
Q: 我知道Jupyter很好,但是Anaconda IPython IRkernel etc. 都是些什麼?我需要仔細了解他們嗎?
A: 簡單版:不用
好奇寶寶版:參見進一步了解
準備軟體包及安裝
1. 下載Anaconda(推薦Python 3.6 64bit版)
2. 下載R(根據系統選擇相應版本)
3. 安裝Anaconda,推薦默認配置安裝
安裝完成後,找到Jupyter Notebook,啟動之
出現這個界面表明運行成功
4. 安裝R,注意這裡的路徑
完成後,找到上述路徑下的in
.exe,運行
到這裡,安裝就全部完成了。
配置
1. jupyter配置啟動文件
在安裝完成後,我們會發現jupyter默認讀取的文件夾並不是我們所希望的,所以第一步的配置就是自定義讀取的文件夾。
首先找到jupyter notebook的快捷方式,複製一份命名為jn,右鍵找到屬性
在標黃的「目標」最後面追加你想要的路徑,不帶引號,應用即可。注意下面一欄可以修改,也可以留空,實測沒有什麼影響。
2. 安裝R kernel
Jupyter可以支持很多種語言,藉助的就是所謂內核(Kernel)的概念,簡單理解就是只要安裝了某語言的內核,就可以在jn中使用這種語言(想想都有些小激動),具體的支持列表在這裡。
具體到R,步驟如下:
打開anaconda prompt
是這個樣子的
在這個界面里,利用命令行,找到前文提到的r.exe。輸入命令
cd /d D:R-languageinr
cd 是切換路徑(change directory),/d 選項切換盤符,在同一盤符下可以省略,之後就是具體的目標路徑;後面為啟動r解釋器。
在這裡輸入
install.packages(c(repr, IRdisplay, evaluate, crayon, pbdZMQ, devtools, uuid, digest))devtools::install_github(IRkernel/IRkernel)
安裝R Kernel (正式的名稱是IRKernel)所需要的文件
之後輸入
IRkernel::installspec()
使得IRKernel在jupyter中生效
完美!
3. 自定義更多配置*
經過幾次使用,發現好像有一些問題,比如每次把打開的瀏覽器關掉,再打開會要求密碼;或者說我並不希望每次都自動彈出瀏覽器。在這些情況下我們可以利用配置文件作自己想要的配置。
打開anaconda prompt,輸入下面的代碼
jupyter notebook --generate-config
讓jupyter生成配置文件jupyter_notebook_config.py,執行完後找到這個配置文件的位置,新建一個同名的jupyter_notebook_config..json文件,基本格式為
{ "NotebookApp": { }}
在NotebookApp增加你的配置文件,比如我的是
具體可以自定義的項就在這個.py文件里,讀者可以參考這裡或者是自己發掘。
包管理
Anaconda本身已經包含了許多應用於python的科學計算庫,通常直接上手使用即可。如果恰好用到尚未安裝的包,可以直接在anaconda prompt中進行管理,使用
conda install package
即可安裝,例如安裝scipy
conda install scipy
更多用法,可參閱這裡。對於在conda中沒有的包,仍可以使用pip進行安裝。
對於R包,並不能在Jupyter的界面中執行安裝命令,因此仍然需要在R解釋器中利用install.package()進行安裝,與一般方式無異。
進一步了解*
IPython
IPython provides a rich architecture for interactive computing with:
* A powerful interactive shell.* A kernel for Jupyter.* Support for interactive data visualization and use of GUI toolkits.* Flexible, embeddable interpreters to load into your own projects.* Easy to use, high performance tools for parallel computing.
簡而言之,IPython提供了一個互動式的python界面,方便進行科學計算。
IPython 與 Jupyter
這兩者中最先出現的是IPython,隨著IPython的發展,其中逐漸增添了一些不僅僅局限於Python語言的組件,例如Notebook etc.這些組件可以應用到各種語言(例如R)中,因此在IPython 4.0版本,這些組件獨立出來形成了一個新的項目,即Jupyter,IPython則專註於互動式的Python界面,以及作為Jupyter的一個內核。
了解更多,可參考IPython主頁和這裡。
Anaconda 與 Conda
conda 是一個包、依賴和環境管理器,適用於多種語言,其扮演的角色和類似pip於python,npm於javascript,但功能更為強大和全面。詳細了解可參閱這裡。
Anaconda則是以Conda作為包管理器,包含了諸多常用python科學計算庫的Python發行版,詳細了解可參閱這裡。
美化*
細心的讀者會發現,每次在啟動Jupyter Notebook的時候,總是會彈出命令行的界面,這實際上這是啟動了一個本地的 Web server,Jupyter就運行在這個Web server上,瀏覽器通過訪問這個本地的 web server (localhost:8888)就會以網頁形式顯示出Jupyter的界面,這意味著我們可以利用.css任意自定義Jupyter的界面。
了解網頁開發的同學現在就可以動手了(~ ̄▽ ̄)~
當然這裡不可能讓讀者再去學網頁開發,現在要介紹一款別人做好的包jupyter-themes,這個包極大地便利了界面的配置工作。
在anaconda prompt中使用pip進行安裝
pip install jupyterthemes
一些基本命令如下(節選,譯自項目Github頁面)
# 列出現有主題# onedork | grade3 | oceans16 | chesterish | monokai | solarizedl | solarizeddjt -l# 選擇主題jt -t chesterish# 重置為默認主題# 注意: 運行命令後需清理瀏覽器緩存# 若沒有生效,嘗試重新啟動一個Notebook會話jt -r# 將代碼字體設置為 Roboto Mono 12pt# (參閱原頁面中的字體表)# 譯者註:主題和字體要同時設定jt -t onedork -f roboto -fs 12
最終成果
至此全部安裝及配置就完成了
推薦閱讀:
※第一關——數據分析社群之實踐計劃
※R語言第三、四章學習心得
※選全明星哪家強,機器學習來幫忙
※再戰『沃+』,百萬孵化獎金等你來拿!
※從自律中找到快樂,用數據分析實現自由
TAG:數據分析 |