Pandas'ta nasıl düzeltilir: keyerror: “['etiket'] eksende bulunamadı”


Pandaları kullanırken karşılaşabileceğiniz bir hata:

 KeyError : "['Label'] not found in axis"

Bu hata genellikle pandalardan DataFrames’ten bir sütunu kaldırmaya çalıştığınızda ve axis=1 belirtmeyi unuttuğunuzda ortaya çıkar.

Varsayılan olarak eksen bağımsız değişkeni, satırları ifade eden 0 olarak ayarlanmıştır. Pandalara sütunlara bakmalarını söylemek için axis=1 belirtmeniz gerekir.

Aşağıdaki örnekte bu hatanın pratikte nasıl düzeltileceği gösterilmektedir.

Hata nasıl yeniden oluşturulur?

Aşağıdaki pandalara sahip olduğumuzu varsayalım DataFrame:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' team ': ['A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'],
                   ' assists ': [5, 7, 7, 9, 12, 9, 9, 4],
                   ' points ': [11, 8, 10, 6, 6, 5, 9, 12]})

#view DataFrame
print (df)

        team assists points
0 to 5 11
1 to 7 8
2 to 7 10
3 to 9 6
4 B 12 6
5 B 9 5
6 B 9 9
7 B 4 12

Şimdi “noktalar” sütununu DataFrame’den kaldırmaya çalıştığımızı varsayalım:

 #attempt to drop "points" column
df_new = df. drop (' points ')

KeyError : "['points'] not found in axis"

Varsayılan olarak drop() işlevi, DataFrame’in satırlarını ifade eden axis=0 öğesini kullanır.

“points” diye bir satır adı olmadığı için hata alıyoruz.

Hata nasıl düzeltilir?

Pandalara bunun yerine sütunlara bakmalarını söylemek için eksen=1’i aşağıdaki gibi belirtmemiz gerekir:

 #drop "points" column
df_new = df. drop (' points ', axis= 1 )

#view updated DataFrame
print (df)

	team assists
0 to 5
1 to 7
2 to 7
3 to 9
4 B 12
5 B 9
6 B 9
7 B 4

“Puan” sütununun DataFrame’den kaldırıldığını ve herhangi bir hata almadığımızı unutmayın.

Bunun nedeni axis=1 kullanmamızdı, dolayısıyla pandalar DataFrame’den hangi değerlerin kaldırılacağına karar verirken “noktalar” için sütun adlarına bakmaları gerektiğini biliyorlardı.

Ek kaynaklar

Aşağıdaki eğitimlerde Python’daki diğer yaygın hataların nasıl düzeltileceği açıklanmaktadır:

Pandas’ta KeyError Nasıl Düzeltilir
Nasıl düzeltilir? ValueError: float NaN int’ye dönüştürülemiyor
Nasıl düzeltilir? ValueError: İşlenenler şekillerle yayınlanamadı

Yorum ekle

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir