獲取 Pandas DataFrame 的前 n 條記錄


使用 Pandas 處理大型資料集通常是一項艱鉅的任務,尤其是在檢索資料集的前幾條記錄時。在本文中,我們將探討獲取 Pandas DataFrame 的前 n 條記錄的各種方法。

安裝和語法

在繼續實現之前,我們必須確保 Pandas 已安裝在我們的系統上,因此請在您的終端中執行 pip 命令:

pip install pandas

安裝完成後,我們可以建立一個 DataFrame 或載入 CSV 檔案,然後檢索前 N 條記錄。

演算法

可以透過多種方法獲取 Pandas DataFrame 的前 n 個條目,但我們將堅持使用最常用的技術和函式,例如:

  • df.head(n) - 獲取 DataFrame 的前 n 行。如果未指定,則 n 的預設值為 5。

  • df.iloc[:n] - 使用基於整數的索引獲取 DataFrame 的前 n 行。

  • df.loc[:n] - 使用基於標籤的索引獲取 DataFrame 的前 n 行。

  • df[:n] - 這是 Python 中的切片運算子,眾所周知,它可以從列表、字串和可迭代物件中獲取子集元素。因此,此語法隱式地使用切片運算子獲取指定的前 N 行。

示例

假設我們有一個包含有關多個人的資訊的資料集,我們想探索不同的方法來檢索此資料的前 10 行。為此,我們可以將此資料載入到 Pandas DataFrame 中並分析可用的不同方法。

import pandas as pd

# Make a placeholder dataframe
df = pd.DataFrame(
   {
      'Name': ['John', 'Mary', 'Peter', 'Jane', 'Mike', 'Alex', 'Sandy', 'Ben', 'Alice', 'Mary', 'Cooper', 'Darth', 'Vader'],
        
      'Age': [25, 32, 18, 45, 27, 39, 32, 19, 29, 32, 18, 45, 27],
        
      'Country': ['USA', 'Canada', 'UK', 'Australia', 'USA', 'Canada', 'UK', 'Australia', 'USA', 'Canada', 'UK', 'Australia', 'USA']
   }
)


# Retrieve first 5 records using df.head(n)
print(df.head(5), end="\n-------------------\n")

# Retrieve first 5 records using df.iloc[:n]
print(df.iloc[:5], end="\n-------------------\n")

# Retrieve first 5 records using df.loc[:n]
print(df.loc[:5], end="\n-------------------\n")

# Retrieve first 5 records using df[:n]
print(df[:5], end="\n-------------------\n")

輸出

    Name  Age    Country
0   John   25        USA
1   Mary   32     Canada
2  Peter   18         UK
3   Jane   45  Australia
4   Mike   27        USA
-------------------
    Name  Age    Country
0   John   25        USA
1   Mary   32     Canada
2  Peter   18         UK
3   Jane   45  Australia
4   Mike   27        USA
-------------------
    Name  Age    Country
0   John   25        USA
1   Mary   32     Canada
2  Peter   18         UK
3   Jane   45  Australia
4   Mike   27        USA
5   Alex   39     Canada
-------------------
    Name  Age    Country
0   John   25        USA
1   Mary   32     Canada
2  Peter   18         UK
3   Jane   45  Australia
4   Mike   27        USA
-------------------

解釋

  • df.head(n) 返回 DataFrame 的前 10 行。

  • df.iloc[:10] 使用基於整數的索引返回 DataFrame 的前 10 行。

  • df.loc[:9] 使用基於標籤的索引返回 DataFrame 的前 10 行。

  • df[:10] 使用切片運算子返回 DataFrame 的前 10 行。

應用

資料分析需要能夠快速訪問 DataFrame 的前 n 個條目。這有許多用途,包括:

  • 探索性資料分析 - 快速瞭解資料的結構和內容。

  • 提取資料子集 用於機器學習的測試和訓練目的。

  • 繪製資料子集 將改進資料視覺化。

結論

在這篇文章中,我們學習了一系列 Pandas 方法,包括 df.head(n)、df.iloc[:n]、df.loc[:n] 和 df[:n] 來獲取指定的前 N 行。我們還研究了獲取 Pandas DataFrame 的前 n 個條目的多種方法。如果您熟悉這些過程,您可以快速處理大型資料集,瞭解資料集的資料型別和性質,並有效地分析它們。

更新於:2023年7月18日

2K+ 次瀏覽

啟動您的職業生涯

透過完成課程獲得認證

開始學習
廣告
© . All rights reserved.