Nasıl düzeltilir: typeerror: 'dataframe' nesnesi çağrılabilir değil
Pandaları kullanırken karşılaşabileceğiniz yaygın bir hata:
TypeError : 'DataFrame' object is not callable
Bu hata genellikle köşeli parantezler [ ] yerine yuvarlak parantezleri () kullanarak pandas DataFrame’deki bir değişken üzerinde hesaplama yapmaya çalıştığınızda ortaya çıkar.
Aşağıdaki örnek, bu sözdiziminin pratikte nasıl kullanılacağını gösterir.
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', 'B', 'C', 'D', 'E', 'F', 'G', 'H'], ' points ': [18, 22, 19, 14, 14, 11, 20, 28], ' assists ': [5, 7, 7, 9, 12, 9, 9, 4], ' rebounds ': [11, 8, 10, 6, 6, 5, 9, 12]}) #view DataFrame print (df) team points assists rebounds 0 A 18 5 11 1 B 22 7 8 2 C 19 7 10 3 D 14 9 6 4 E 14 12 6 5 F 11 9 5 6 G 20 9 9 7:28 4 12
Şimdi “puan” sütunundaki ortalama değeri hesaplamaya çalıştığımızı varsayalım:
#attempt to calculate mean value in points column
df(' points '). mean ()
TypeError : 'DataFrame' object is not callable
Round () parantezlerini kullandığımız için pandalar DataFrame’i bir fonksiyon olarak çağırmaya çalıştığımızı düşünüyor.
DataFrame bir fonksiyon olmadığı için hata alıyoruz.
Hata nasıl düzeltilir?
Bu hatayı çözmenin yolu, noktalar sütununa erişirken yuvarlak parantez () yerine köşeli parantez [ ] kullanmaktır:
#calculate mean value in points column
df[' points ']. mean ()
18.25
Köşeli parantez kullandığımız için puan sütununun ortalamasını (18.25) hata almadan hesaplayabiliyoruz.
Ayrıca nokta sütununun ortalamasını hesaplamak için aşağıdaki nokta gösterimini de kullanabileceğimizi unutmayın:
#calculate mean value in points column
df. points . mean ()
18.25
Bu sefer de herhangi bir hata almadığımızı unutmayın.
Ek kaynaklar
Aşağıdaki eğitimlerde Python’daki diğer yaygın hataların nasıl düzeltileceği açıklanmaktadır:
Python’da Nasıl Düzeltilir: ‘numpy.ndarray’ nesnesi çağrılabilir değil
Nasıl düzeltilir: TypeError: ‘numpy.float64’ nesnesi çağrılabilir değil
Nasıl Onarılır: Tür Hatası: Beklenen Dize veya Bayt Nesnesi