Pandas 中的 KeyError
本教程探討 Pandas 中 KeyError 的概念。
Pandas 的 KeyError 是什麼
在使用 Pandas 時,分析師可能會遇到程式碼直譯器丟擲的多個錯誤。這些錯誤範圍很廣,可以幫助我們更好地調查問題。
在本教程中,我們旨在更好地瞭解 Pandas 引發的 KeyError、引發該錯誤的原因以及解決該錯誤的潛在方法。
首先,讓我們瞭解這個錯誤的含義。KeyError 意味著你嘗試在 DataFrame 中查詢的鍵或元素,甚至可能是 DataFrame 中的一列都不存在。
這意味著你正在嘗試查詢或查詢某些不以你期望的方式存在的東西。在這樣的情況下,我們不得不面對 Pandas 的 KeyError。
分析師通常會面臨這個錯誤;它在格式不佳或標記不佳的 DataFrame 中無處不在。現在,讓我們瞭解為什麼會出現此錯誤。
但是,在我們這樣做之前,讓我們建立一個虛擬 DataFrame 來使用。我們將此 DataFrame 稱為 dat1
。
讓我們使用以下程式碼建立此 DataFrame。
import pandas as pd
dat1 = pd.DataFrame({"dat1": [9, 5]})
上面的程式碼建立了一個 DataFrame 和一些條目,即 9
和 5
。要檢視資料中的條目,我們使用以下程式碼。
print(dat1)
上面的程式碼給出了以下輸出。
dat1
0 9
1 5
如圖所示,我們有 2 列和 2 行,其中一列表示索引,第二列表示 DataFrame 中的值。
在 Pandas 中為什麼我們會遇到 KeyError
現在讓我們複製錯誤。我們可以使用下面的程式碼來做到這一點。
print(dat1["Date"])
程式碼嘗試從 dat1
DataFrame 中獲取名為 Date
的列,理論上該 DataFrame 不存在。因此,我們得到以下輸出。
KeyError: 'Date'
Traceback (most recent call last)
因此,我們可以看到,如果我們通過不存在的列名訪問 DataFrame,我們可能不得不面對 KeyError。
可能會出現此錯誤,因為你可能沒有嘗試引用的整個 DataFrame。在這種情況下,會丟擲一個 KeyError,使分析師難以理解其背後的確切原因。
最好在通過理論上不存在的資料引用或查詢之前檢查所有變數名稱,以避免這種情況。
因此,本教程教給我們關於 Pandas 中丟擲的 KeyError 的含義、原因和可能的解決方案。