python 實現長數據完整打印方案

0.摘要

python中的長數據在打印的時候,往往為瞭方便閱讀會進行省略操作,但這會對我們查看數據帶來不便。本文主要介紹完整顯示長數據的方法。

1.numpy數據

不同類型的數據的完整顯示方法各有不同,我們先介紹numpy數組的輸出設置方法:

在輸出位置前加入 如下代碼:

import numpy as np
np.set_printoptions(threshold=np.inf)

numpy對數組長度設置瞭一個閾值,數組長度<=閾值:完整打印;數組長度>閾值:以省略的形式打印;

這裡的np.inf隻是為瞭保證這個閾值足夠大,以至於所有長度的數組都能完整打印,讀者也可以根據自己的實際情況進行設置。

比如,threshold=10000,那麼數組長度<=10000的數組可以完整打印;數組長度>10000:以省略的形式打印。

2.pandas數據

pandas數據的設置方法分為行和列:

import pandas as pd
#顯示所有列
pd.set_option('display.max_columns', None)
#顯示所有行
pd.set_option('display.max_rows', None)
#設置value的顯示長度為100,默認為50
pd.set_option('max_colwidth',100)

3.tensor數據

將tensor轉為list即可。

在pytorch和tensorflow中有一種數據類型叫做tensor,tensor數據省略問題,numpy和pandas的設置都是無效的。

補充:python – Print 數組無法完整輸出解決方法

直接在import numpy 加上下面一句代碼即可解決 !!!

import numpy as np
np.set_printoptions(threshold=np.inf)

補充:Python中Dataframe通過print輸出多行時顯示省略號

筆者使用Python進行數據分析時,通過print輸出Dataframe中的數據,當Dataframe行數很多時,中間部分顯示省略號,如下圖所示:

0      項華祥
1      何炅
2      張藝飛
3      李仁港
4      崔齡燕
5      董春澤
6     鄧超、俞白眉
7     葉偉信,鄒凱光
8      肖洋
    ...   
57     劉鎮偉
58     周拓如
59    陸劍青、梁樂民
60     陳木勝
61     李仁港
62     許安、楊龍澄
63     吳天明
64      李駿
65     申太羅
66   呂寅榮、亞歷山德羅·卡羅尼
67    羅蘭·艾默裡奇
68     佈萊恩·辛格
69   安東尼·羅素、喬·羅素

如果我想通過print顯示全部數據,怎麼處理呢?

通過查看pandas的官方文檔可知,pandas.set_option() 可以設置pandas相關的參數,從而改變默認參數。 打印pandas數據時,默認是輸出100行,多的話中間數據會輸出省略號。

在代碼中添加以下兩行代碼,可以改變顯示寬度和行數,這樣就能完整地查看數據瞭。

pd.set_option('display.width', 1000) # 設置字符顯示寬度
pd.set_option('display.max_rows', None) # 設置顯示最大行

以上為個人經驗,希望能給大傢一個參考,也希望大傢多多支持WalkonNet。如有錯誤或未考慮完全的地方,望不吝賜教。

推薦閱讀: