今天整理了幾個在使用python進行數據分析的常用小技巧、命令。記得搭配Pandas+Jupyter Notebook使用哦。
import pandas as pd
import pandas_profiling
nba = pd.read_csv('nba_all_elo.csv') #導入數據
nba.profile_report()
類型推斷:檢測數據幀中列的數據類型。
要點:類型,唯一值,缺失值
分位數統計信息,例如最小值,Q1,中位數,Q3,最大值,範圍,四分位數範圍
描述性統計數據,例如均值,眾數,標準偏差,總和,中位數絕對偏差,變異係數,峰度,偏度
最常使用的值
直方圖
相關性矩陣
缺失值矩陣,計數,熱圖和缺失值樹狀圖
文本分析:了解文本數據的類別(大寫,空格),腳本(拉丁,西裡爾字母)和塊(ASCII)
上一個神器Pandas Profiling可以快速幫助我們預覽數據,那麼這個神器cufflinks可以幫我們直接使用DataFrame快速繪製交互式圖表。就像seaborn封裝了matplotlib一樣,cufflinks在plotly的基礎上做了一進一步的包裝,方法統一,參數配置簡單。
對pandas熟悉的同學可能知道pandas可以直接調用.plot()繪圖,我們來看看
如果使用cufflinks來繪製,也是一行代碼
是不是交互式的圖表更得人心?當然還可以直接使用DataFrame繪製其他複雜的圖表
如果在數據分析工作中經常需要數據可視化的話就考慮使用cufflinks吧!
不知道大家有沒有經歷過在一個notebook中進行數據預處理數據清洗等相關工作,在另一個notebook中進行可視化相關工作,那麼怎樣在繪圖時直接調用另一個notebook中的數據呢?使用%store就可以輕鬆解決
%store 變量 #保存變量
%store -r 變量 #在另一個notebook中調用變量
Jupyter作為生成嵌入式代碼的優秀編輯器自帶了很多快捷鍵,熟練使用快捷鍵將會省去很多繁瑣的滑鼠點擊操作,可以使用Cmd + Shift + P或Ctrl + Shift + P在Linux和Windows上查看有哪些快捷鍵。
常用的比如
Tab : 代碼補全或縮進
Shift-Tab : 提示
Ctrl-] : 縮進
Ctrl-[ : 解除縮進
Ctrl-Home : 跳到單元開頭
Ctrl-Up : 跳到單元開頭
Ctrl-End : 跳到單元末尾
Ctrl-Down : 跳到單元末尾
Ctrl-Left : 跳到左邊一個字首
Ctrl-Right : 跳到右邊一個字首
我們都知道在命令行執行python腳本可以使用python filename.py,而我推薦使用python -i filename.py去執行python腳本,因為這樣在腳本執行完畢之後,python不會退出編譯器。從而我們可以檢查變量的值或繼續進行操作。
而如果我們的代碼發生了報錯的話,該命令會直接定位到代碼發生異常的位置,然後我們可以更方便的去處理代碼,我們來看看
有時當我們使用pandas讀取的數據文件非常大的時候,如果直接一次性讀取全部數據會出現內存不夠用的情況,所以這時我們應該對該數據進行分批次讀取,並處理每一批次然後保存每一批次的結果,最後對全部批次結果進行匯總。
import pandas as pd
data = pd.read_csv("data.csv",chunksize=10000) #chunksize是每一批次處理的數量
result = [] #用於儲存結果
for chunk in data:
#寫一個函數處理每一個批次
filter_result = chunk_manipulate(chunk)
result.append(filter_result)
#合併所有批次
df = pd.concat(result)