Pandas這樣來設置,做數據分析舒適百倍
在日常使用pandas的過程中,由于我們所分析的數據表規模、格式上的差異,使得同樣的函數或方法作用在不同數據上的效果存在差異。
而pandas有著自己的一套「參數設置系統」,可以幫助我們在遇到不同的數據時靈活調節從而達到最好的效果,本文就將介紹pandas中常用的參數設置方面的知識。
1. 設置DataFrame最大顯示行數
pandas設置參數中的display.max_rows用于控制打印出的數據框的最大顯示行數,我們使用pd.set_option()來有針對的設置參數,如下面的例子:
圖2
在修改display.max_rows的參數值之后,我們的數據框只會顯示指定行數的數據,中間的部分都會以省略號的形式顯示,當我們的數據框行數較多,可以加大這個參數以顯示更多行數據。
2. 設置DataFrame最大顯示列數
類似display.max_rows,通過修改display.max_columns我們可以調節最大顯示的數據框列數(默認是20列),這在我們的數據框字段較多又想全部查看的時候很有用:
圖3
3. 設置每列的最大顯示寬度
對于一些單元格內容長度較長的數據譬如長文本,在查看數據框時過長的部分會被簡化為省略號,而通過修改display.max_colwidth參數我們可以在必要時,使得超長的部分也顯示出來:
圖4
4. 指定小于某個數的元素顯示為0
通過display.chop_threshold參數我們在不修改原始數據的情況下,指定數據框中絕對值小于閾值的數顯示為0:
圖5
5. 格式化浮點數
通過display.float_format參數我們可以設置浮點數的顯示格式,譬如這里我們給浮點數加上¥前綴并設定保留兩位小數:
圖6
6. 設置info()方法中非缺失值檢查的行數上限
針對數據框的info()方法可以幫助我們查看數據框的一些概覽信息,譬如每一列對應的非缺失值個數。
但默認情況下當數據框行數大于1690784行時,再查看info()信息,會處于計算效率的考慮略去缺失值檢查信息。
這時我們可以通過設置display.max_info_rows參數來提高這個上限:
圖7
7. 控制小數打印的精度
控制數據框中小數的顯示精度除了上文提到的方法之外,還可以通過修改display.precision參數來控制,默認是6位小數:
圖8
8. 臨時修改參數
有些時候我們只希望在某張表上進行設置參數的修改,不希望影響到之后的其他表的顯示。
這時除了用pd.reset_option()對指定的參數進行復原之外,我們還可以利用with關鍵詞配合pd.option_context以臨時的方式將指定的參數作用在局部范圍內:
圖9