成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

7個Python特殊技巧,助力你的數據分析工作之路

開發 開發工具 后端
如何提升數據分析能力?Peter Nistrup 根據自身經驗列出了7個有用工具。本文列舉了一些提升或加速日常數據分析工作的技巧。

本文列舉了一些提升或加速日常數據分析工作的技巧,包括:

  • Pandas Profiling
  • 使用 Cufflinks 和 Plotly 繪制 Pandas 數據
  • IPython 魔術命令
  • Jupyter 中的格式編排
  • Jupyter 快捷鍵
  • 在 Jupyter(或 IPython)中使一個單元同時有多個輸出
  • 為 Jupyter Notebook 即時創建幻燈片

1. Pandas Profiling

該工具效果明顯。下圖展示了調用 df.profile_report() 這一簡單方法的結果:

使用該工具只需安裝和導入 Pandas Profiling 包。

本文不再詳述這一工具,如欲了解更多,請閱讀:

https://towardsdatascience.com/exploring-your-data-with-just-1-line-of-python-4b35ce21a82d

2. 使用 Cufflinks 和 Plotly 繪制 Pandas 數據

「經驗豐富的」數據科學家或數據分析師大多對 matplotlib 和 pandas 很熟悉。也就是說,你只需調用 .plot() 方法,即可快速繪制簡單的 pd.DataFrame 或 pd.Series:

有點無聊?

這已經很好了,不過是否可以繪制一個交互式、可縮放、可擴展的全景圖呢?是時候讓 Cufflinks* *出馬了!(Cufflinks 基于 Plotly 做了進一步的包裝。)

在環境中安裝 Cufflinks,只需在終端中運行! pip install cufflinks --upgrade 即可。查看下圖:

效果好多了!

注意,上圖唯一改變的是 Cufflinks cf.go_offline() 的導入和設置,它將 .plot() 方法變為 .iplot()。

其他方法如 .scatter_matrix() 也可以提供非常棒的可視化結果:

需要做大量數據可視化工作的朋友,可以閱讀 Cufflinks 和 Plotly 的文檔,發現更多方法。

  • Cufflinks 文檔:https://plot.ly/ipython-notebooks/cufflinks/
  • Plotly 文檔:https://plot.ly/

3. IPython 魔術命令

IPython 的「魔術」是 IPython 基于 Python 標準語法的一系列提升。魔術命令包括兩種方法:行魔術命令(line magics):以 % 為前綴,在單個輸入行上運行;單元格魔術命令(cell magics):以 %% 為前綴,在多個輸入行上運行。下面列舉了 IPython 魔術命令提供的一些有用功能:

(1) %lsmagic:找出全部命令

如果你只記得一個魔術命令,那必須得是這一個。執行 %lsmagic 命令將提供所有可用魔術命令的列表:

(2) %debug:交互式 debug

這可能是我最常使用的魔術命令了。

大部分數據科學家都遇到過這種情況:執行的代碼塊一直 break,你絕望地寫了 20 個 print() 語句,想輸出每個變量的內容。然后,當你最終修復問題后,你還得返回并再次刪除所有 print() 語句。

不過以后再也不用這樣了。遇到問題后只需執行 %debug 命令,即可執行想要運行的任意代碼部分:

上圖中發生了什么?

 

  • 我們有一個函數,它以列表為輸入,并對所有的偶數取平方值。
  • 我們運行函數,但是出了些問題。但是我們并不知道怎么回事!
  • 對該函數使用%debug 命令。
  • 讓調試器告訴我們 x 和 type(x) 的值。
  • 問題顯而易見:我們把'6'作為字符串輸入到函數中了!

這對于更復雜的函數非常有用。

(3) %store:在 notebook 之間傳遞變量

這個命令也很酷。假設你花了一些時間清洗 notebook 中的數據,現在你想在另一個 notebook 中測試一些功能,那么你是在同一個 notebook 中實現該功能,還是保存數據并在另一個 notebook 中加載數據呢?使用%store 命令后,這些操作都不需要!該命令將存儲變量,你可以在其他任意 notebook 中檢索該變量:

  • %store [variable] 存儲變量。
  • %store -r [variable] 讀取/檢索存儲變量。

%who:列出所有全局變量。

你是否遇到過,為變量賦值后卻忘記變量名的情況?或者不小心刪掉了負責為變量賦值的單元格?使用%who 命令,你可以得到所有全局變量的列表:

%%time:計時魔法命令

使用該命令可以獲取所有計時信息。只需對任意可執行代碼應用%%time 命令,你就可以得到如下輸出:

%%writefile:向文件寫入單元格內容

在 notebook 中寫復雜函數或類,且想將其保存到專屬文件中時,該魔法命令非常有用。只需為函數或類的單元格添加 %%writefile 前綴和想要保存到的文件名即可:

如上所示,我們可以將創建的函數保存到 utils.py 文件中,然后就可以隨意導入了。在其他 notebook 中也可以這樣,只要與 utils.py 文件屬于同一個目錄即可。

4. Jupyter 中的格式編排

這個工具很酷!Jupyter 考慮到 markdown 中存在 HTML / CSS 格式。以下是我最經常使用的功能:

藍色、時尚:

  1. <div class="alert alert-block alert-info">  
  2.   This is <b>fancy</b>
  3. </div> 

 

紅色、輕微慌張:

  1. <div class="alert alert-block alert-danger">  
  2.   This is <b>baaaaad</b>
  3. </div> 

 

綠色、平靜:

  1. <div class="alert alert-block alert-success"> 
  2.  This is <b>gooood</b>
  3. </div> 

 

下圖展示了它們的運行過程:

 

當你想以 Notebook 格式呈現一些發現時,這非常有用!

5. Jupyter 快捷鍵

想了解和學習鍵盤快捷鍵,你可以使用命令面板:Ctrl + Shift + P,獲取 notebook 所有功能的列表。下面選取了幾個最基礎的命令:

  • Esc:進入命令模式。在命令模式內,你可以使用方向鍵在 notebook 內進行導航。

在命令模式內:

  • A 和 B:在當前單元格上方(Above)或下方(Below)插入新的單元格。
  • M:當前單元格轉入 Markdown 狀態。
  • Y:當前單元格轉入 code 狀態。
  • D,D:刪除當前單元格。
  • Enter:當前單元格回到編輯模式。

在編輯模式內:

  • Shift + Tab:為你在當前單元格中鍵入的對象提供文檔字符串(文檔),持續使用該快捷鍵,可循環使用文檔模式。
  • Ctrl + Shift + -:在光標所在處分割當前單元格。
  • Esc + F:查找并替換代碼(不包括輸出)。
  • Esc + O:切換單元格輸出。

選擇多個單元格:

  • Shift + Down 和 Shift + Up:選中下方或上方的單元格。
  • Shift + M:合并選中單元格。

注意,選中多個單元格后,你可以批量執行刪除/復制/剪切/粘貼/運行操作。

6. 在 Jupyter(或 IPython)中使一個單元同時有多個輸出

想展示 pandas DataFrame 的 .head() 和 .tail(),但由于創建運行 .tail() 方法的額外代碼單元過于麻煩而不得不中途放棄,你是否有過這樣的經歷?現在不用怕了,你可以使用以下代碼行展示你想展示的輸出:

  1. from IPython.core.interactiveshell import InteractiveShell 
  2. InteractiveShell.ast_node_interactivity = "all" 

下圖展現了多個輸出的結果:

7. 為 Jupyter Notebook 即時創建幻燈片

使用 RISE,你可以僅通過一次按鍵將 Jupyter Notebook 即時轉變為幻燈片。而且 notebook 仍然處于活躍狀態,你可以在展示幻燈片的同時執行實時編碼!

要想使用該工具,你只需通過 conda 或 pip 安裝 RISE 即可。

  1. conda install -c conda-forge rise 

或者

  1. pip install RISE 

現在,你可以點擊新按鈕,為 notebook 創建不錯的幻燈片了:

【本文是51CTO專欄機構“機器之心”的原創譯文,微信公眾號“機器之心( id: almosthuman2014)”】 

戳這里,看該作者更多好文

 

責任編輯:趙寧寧 來源: 51CTO專欄
相關推薦

2012-05-04 08:16:47

Windows XP

2009-03-05 09:48:25

查詢技巧MySQL

2009-12-15 09:51:23

網吧路由器

2020-07-07 14:35:41

Python數據分析命令

2020-12-04 15:23:58

Python數據分析工具

2015-11-16 10:03:10

效率

2019-09-10 11:31:16

Python數據分析表達式

2018-08-23 17:15:10

編程語言Python數據分析

2019-07-08 14:45:17

Excel數據分析數據處理

2019-07-10 15:51:40

Python數據分析代碼

2013-01-06 11:01:59

大數據分析

2020-08-21 08:52:09

Python數據分析工具

2019-07-25 14:23:36

2016-09-16 23:21:51

數據分析數據建模

2023-10-11 11:34:54

數據分析運營

2020-05-18 09:56:46

數據分析數據管理數據

2016-12-15 21:15:58

大數據

2018-04-20 12:12:18

數據分析可視化數據挖掘

2016-03-16 10:39:30

數據分析數據科學可視化

2020-07-11 09:45:33

Python編程語言開發
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 在线免费视频一区 | 国内精品在线视频 | 中文字幕久久精品 | 国产一区成人 | 欧美日韩成人在线观看 | 看真人视频一级毛片 | 欧美高清成人 | 国产超碰人人爽人人做人人爱 | 91久久久久 | 欧美精品网站 | 国产免费一二三区 | 欧美1级 | 一级做a爰片久久毛片免费看 | 欧美日韩精品久久久免费观看 | www.久久艹 | 免费h在线 | 91久久国产综合久久91精品网站 | 99亚洲精品 | 国产探花在线精品一区二区 | 在线国产一区二区 | 华丽的挑战在线观看 | 日韩国产一区二区三区 | 国产资源在线观看 | 激情综合五月 | av在线一区二区三区 | 国产精品a一区二区三区网址 | 高清国产午夜精品久久久久久 | 精品成人69xx.xyz | 国产精品一区视频 | 亚洲精品久久久久久久久久久久久 | 中文字幕第一页在线 | 国产精品久久久久久 | 欧美精品久久久 | 国产成人精品久久久 | 香蕉久久av | 亚洲一区二区免费看 | 国产成人精品一区二三区在线观看 | 国产精品久久99 | 亚洲毛片在线观看 | 国产农村妇女毛片精品久久麻豆 | 国产精品99久久久久久动医院 |