7件事,讓你快速提升數據分析能力

全文共3275字,預計學習時長6分鐘node

用一張美圖吸引你!程序員

想讓本身的數據分析能力更上一層樓嗎?本文能夠幫助你造成一個「每日加速提高數據分析能力清單」。shell

#1: Pandas Profiling微信

這一工具的優勢顯而易見。如下動畫是使用df.profile_report()這一簡單方法的結果。請自行觀當作果展現;markdown

使用此工具只需安裝和導入Pandas Profiling程序包便可。函數

#2: 使用Cufflinks和Plotly繪製Panda數據工具

大多所謂的「經驗豐富的」數據科學家或數據分析師都對matplotlib和 pandas的協同很是熟悉。也就是說,他們能夠經過使用.plot()函數快速繪製pd.DataFrame或pd.Series圖像。學習

有點無聊是吧?測試

如今就行了。如何作一個交互型全景式可縮放的圖像呢?Cufflinks 能夠作到!(由 Plotly提供)動畫

在系統中安裝Cufflinks便可! 快速安裝Cufflinks ——在本身最喜歡的終端進行更新便可。能夠觀看如下動畫:

好多了!

注意,惟一會改變以上結果的是對Cufflinks輸入並設置cf.go_offline() 函數。其他的只是把.plot()改爲.iplot()。

其餘像.scatter_matrix()這樣的函數會帶來不錯的可視化圖像:

酷斃了!

但願從事大量數據可視化工做的朋友都看一看有關的Cufflinks和Plotly內容,從中能夠找到大量方法!

#3: IPython Magic Commands

IPython 的Magics本質上就是IPython堆疊在Python語法頂端的一系列增強功能。Magic commands有兩種:其一爲line magics,用%做爲前綴表示,在一行輸入的代碼上運行;而 cell magics用%%做爲前綴表示,在多行輸入的代碼上運行。如下是Magics的一些實用函數:

%lsmagic: 應有盡有。

不妨先嚐試一些傳統卻好用的方法。若是隻記得一條Magic Command,估計就是它了。執行%lsmagic將會出現全部可用的Magic Commands列表:

%debug: 交互程序調試

這估計是Magic Command使用頻次最高的了。

大多人都試過:程序員執行一個代碼塊,而這個代碼塊一直出錯。絕望中的程序員爲了輸出每一變量的內容,寫下20 print()一類代碼。而後當程序員終於修復了問題時,就不得不回過頭刪除全部列出的函數。

然而如今不用了!只需在遇到問題的時候執行%debug,就能夠執行任意一部分代碼了:

那麼,總結一下以上內容:

1. 有一個函數,它將一個列表做爲輸入,並平方全部偶數。

2. 運行函數,某處出現錯誤。但沒法找到錯誤。

3. 出錯時把%debug命令標記到函數中。

4. 讓調試程序顯示x以及type(x)的值。

5. 由此找到了錯誤:6被看成了一行字符串!

能夠想象,這一命令對更多更復雜的函數都大有用處!

%store: 在notebooks間互傳變量

這個命令也很棒。首先說一提及因。程序員花時間清理了notebook中的一些數據,如今要測試另外一notebook中的一些函數,所以既須要在同一notebook中實現函數功能,又要將其放到另外一notebook中。用%store只要存儲變量,並在任一notebook中檢索便可:

%store [variable]存儲變量。

%store -r [variable]閱讀/檢索已存儲的變量。

%who: 羅列全部變量。

是否曾將某個值賦到一個變量上但忘了變量名稱?是否不當心刪除了賦值給變量的單元格?有了%who,就能夠得到全部已賦值的變量:

%%time: 魔法定時。

有了這個命令,就能夠得到一切所需的定時信息。只要將%%time應用到任何一段可執行的代碼中,就能夠得到以下輸出:

24微秒。馬馬虎虎吧。

%%writefile: 將單元格內容編輯到文檔。

這是本文的最後一個命令。當已經在notebook中寫了一些複雜的函數或其類別,而想要將其從notebook中分離存到文件中去時,這個命令很是有用。只需爲函數或其類別添加前置%%writefile,而後添加文件名儲存便可:

如圖所示,能夠直接將建立的函數儲存到 「utils.py」 文件夾中,以任意形式導入函數便可。在其餘notebook中也是這樣!(只要都在utils.py文件夾的同一個目錄中)

#4: Jupyter中的絢麗格式

這個很是棒!基本上,Jupyter容許在markdown單元格中設置一些HTML / CSS格式。這是一些經常使用的:

憂鬱而時髦的:

<div class="alert alert-block alert-info">

This is <b>fancy</b>!

</div>

熱血而稍顯痛苦的:

<div class="alert alert-block alert-danger">

This is <b>baaaaad</b>!

</div>

青澀而平靜的:

<div class="alert alert-block alert-success">

This is <b>gooood</b>!

</div>

此處爲操做動畫:

當要以notebook形式展現成果時,這些命令很是有用!

#5: Jupyter的快捷鍵

學習了鍵盤快捷鍵後,可使用命令面板:Ctrl + Shift + P。這一操做能夠直接喚起notebook中的函數列表。如下爲部分基礎命令:

Esc: 使用這一快捷鍵可直接切換到命令模式。這也是用方向鍵在notebook中導航的方式。

處於命令模式時:

• A和B:鍵入新單元格,上移([A]bove)或下移([B]elow)現有單元格。

• M: 將現有單元格markdown( [M]arkdown)。

• Y: 將現有單元格改成代碼。

• D,D:確認刪除 ([D]efinetly [D]eletes)現有單元格。

Enter: 對現有單元格進行返回編輯模式的操做。

處於編輯模式時:

• Shift + Tab:給鍵入現有單元格的目標顯示Docstring (文檔字符串) —— 長按快捷鍵切換文檔模式。

• Ctrl + Shift + -:將現有單元格從光標停留處分離。

• Esc + F:查找替換不含輸出的代碼。

• Esc + O:切換單元格輸出。

選擇多個單元格:

• Shift + Down和Shift + Up: 向下或向上選擇下一個單元格。我的認爲可使用演繹法進行判別。

• Shift + M: 合併選中的單元格。

• 請注意,一旦單元格被選中,則能夠批量刪除/複製/粘貼/運行。

#6: Jupyter (或IPython)每一單元格的多種輸出

這個也不錯。是否曾經想顯示pandas數據幀(DataFrame)的the .head()和 the .tail()?可是卻半途而廢,由於要建立一個額外的代碼單元格去運行.tail() ,這太麻煩了。別再懼怕了,如今使用下列代碼能夠顯示全部想要的輸出:

from IPython.core.interactiveshell import InteractiveShell

InteractiveShell.ast_node_interactivity = "all"

看,多個輸出的實力在此:

小菜一碟

#7:不斷擴充本身的Jupyter notebook

使用 RISE,就能夠將Jupyter Notebook陸續轉化爲幻燈片形式。最棒的是,notebook還是可用的,因此能夠實現文稿演示的同時實時編碼!

根據我的系統環境,經過conda或者pip均可以安裝 RISE以使用該工具:

conda install -c conda-forge rise

/// OR ///

pip install RISE

如今就能夠點擊新按鈕從notebook中建立完美的演示文稿了:

留言 點贊 關注

咱們一塊兒分享AI學習與發展的乾貨
歡迎關注全平臺AI垂類自媒體 「讀芯術」


(添加小編微信:dxsxbb,加入讀者圈,一塊兒討論最新鮮的人工智能科技哦~)

相關文章
相關標籤/搜索