如何在 Pandas 資料框中擴充套件輸出顯示以檢視更多列?


當我們在 Pandas 中處理大型資料集時,我們通常會以表格格式檢視和分析資料。當處理包含大量列的寬資料框時,預設的顯示設定可能會截斷或隱藏某些列,這使得難以完全探索和理解資料。為了克服此限制,我們可以擴充套件 Pandas 中的輸出顯示,以確保所有列都可見。在本文中,我們將討論擴充套件輸出顯示以檢視更多列的各種方法和技巧。

預設顯示設定

預設情況下,Pandas 會限制顯示的列數,以使輸出適合可用空間。此行為由 display.max_columns 選項控制,該選項確定要顯示的最大列數。

方法 1:使用 pd.set_option 方法

pd.set_option 方法允許我們修改 Pandas 中的各種顯示選項,包括要顯示的列數。透過將 display.max_columns 選項設定為 None,Pandas 將顯示 DataFrame 中的所有列。

語法

pd.set_option('display.max_columns', None)

這裡,pd.set_option('display.max_columns', None) 用於修改 Pandas 中要顯示的最大列數的顯示選項。透過將其設定為 None,它允許 DataFrame 中的所有列在不截斷的情況下顯示。

示例

在下面的示例中,我們使用 Pandas 庫建立了一個包含 10 列的 DataFrame df。列被標記為 'A' 到 'J',每列包含三個整數值的列表。然後,程式碼將 Pandas 選項display.max_columns設定為 None,這確保 DataFrame 中的所有列都將在不截斷的情況下顯示。最後,列印 DataFrame df,顯示所有列及其相應的值。

import pandas as pd

# Create a DataFrame with 10 columns
data = {'A': [1, 2, 3],
        'B': [4, 5, 6],
        'C': [7, 8, 9],
        'D': [10, 11, 12],
        'E': [13, 14, 15],
        'F': [16, 17, 18],
        'G': [19, 20, 21],
        'H': [22, 23, 24],
        'I': [25, 26, 27],
        'J': [28, 29, 30]}
df = pd.DataFrame(data)

# Set option to display all columns
pd.set_option('display.max_columns', None)

print(df)

輸出

    A  B  C   D   E     F   G     H   I     J
0  1  4  7  10  13  16  19  22  25  28
1  2  5  8  11  14  17  20  23  26  29
2  3  6  9  12  15  18  21  24  27  30

方法 2:修改 display.max_columns 選項

我們可以使用 pd.options.display 屬性直接修改 display.max_columns 選項。透過將其設定為 None,我們可以獲得與上一方法相同的結果。

語法

pd.options.display.max_columns = None

這裡,pd.options.display.max_columns = None 用於直接在 Pandas 中修改 display.max_columns 選項。透過將其設定為 None,DataFrame 中的所有列都將在不截斷的情況下顯示。

示例

在下面的示例中,我們使用 Pandas 庫建立了一個包含 10 列的 DataFrame df。列被標記為 'A' 到 'J',每列包含三個整數值的列表。此程式碼沒有使用 pd.set_option 方法,而是透過將 None 分配給pd.options.display.max_columns來直接修改 display.max_columns 選項。這確保 DataFrame 中的所有列都將在不截斷的情況下顯示。最後,列印 DataFrame df,顯示所有列及其相應的值。

import pandas as pd

# Create a DataFrame with 10 columns
data = {'A': [1, 2, 3],
        'B': [4, 5, 6],
        'C': [7, 8, 9],
        'D': [10, 11, 12],
        'E': [13, 14, 15],
        'F': [16, 17, 18],
        'G': [19, 20, 21],
        'H': [22, 23, 24],
        'I': [25, 26, 27],
        'J': [28, 29, 30]}
df = pd.DataFrame(data)

# Modify the display.max_columns option
pd.options.display.max_columns = None

print(df)

輸出

     A  B  C   D   E   F    G    H    I     J
0  1  4  7  10  13  16  19  22  25  28
1  2  5  8  11  14  17  20  23  26  29
2  3  6  9  12  15  18  21  24  27  30

方法 3:調整終端/控制檯寬度

有時,終端或控制檯視窗寬度可能會限制顯示的列數。調整終端寬度可能是擴充套件輸出顯示的簡單解決方案。透過增加寬度,可以容納更多列而不會截斷。

示例

在下面的示例中,我們匯入 Pandas 庫和 os 模組。然後,我們透過使用 os.environ['COLUMNS'] 將值 '150' 分配給 'COLUMNS' 環境變數,將終端寬度設定為 150 列。接下來,建立了一個包含 15 列的 DataFrame df。列名錶示為從 0 到 14 的數字字串,每列包含三個重複的相應列名的值。最後,列印 DataFrame df,顯示所有 15 列及其值。

import pandas as pd
import os

# Set the terminal width to 150 columns
os.environ['COLUMNS'] = '150'

# Create a DataFrame with 15 columns
data = {str(i): [i] * 3 for i in range(15)}
df = pd.DataFrame(data)

print(df)

輸出

  0  1  2  3  4  5  6  7  8  9  10  11  12  13  14
0  0  1  2  3  4  5  6  7  8  9  10  11  12  13  14
1  0  1  2  3  4  5  6  7  8  9  10  11  12  13  14
2  0  1  2  3  4  5  6  7  8  9  10  11  12  13  14

結論

在本文中,我們討論瞭如何使用各種方法擴充套件輸出顯示以在 Pandas 資料框中檢視更多列。我們討論了使用 pd.set_option 方法和修改 display.max_columns 選項來顯示所有列。此外,我們還強調了調整終端/控制檯寬度以適應更寬顯示的重要性。

更新於: 2023年10月16日

1K+ 次檢視

開啟你的 職業生涯

透過完成課程獲得認證

開始學習
廣告

© . All rights reserved.