AttributeError: objek 'DataFrame' tidak memiliki atribut 'ix'

9

Saya mendapatkan kesalahan di atas ketika saya mencoba menggunakan atribut .ix dari dataframe panda untuk mengeluarkan kolom, misalnya df.ix [:, 'col_header']. Script bekerja pada pagi ini, tetapi sore ini saya menjalankannya di lingkungan linux baru dengan instalasi baru Pandas. Adakah orang lain yang melihat kesalahan ini sebelumnya? Saya sudah mencari di sini dan di tempat lain tetapi tidak dapat menemukannya.

Diarmid Roberts
sumber
3
Anda menjalankan versi panda yang lebih lama. Lihat ini? stackoverflow.com/questions/43838999/pandas-replacement-for-ix
StupidWolf

Jawaban:

11

Instalasi baru hari ini (30 Jan 2020) akan dipasang pd.__version__ == '1.0.0'. Dengan itu muncul penghapusan banyak fitur usang .

Series.ix dan DataFrame.ix dihapus (GH26438)

ALollz
sumber
7

mencoba df.iloc[:, 'col_header']

.ix sudah ditinggalkan

Dr_Hope
sumber
2

memiliki masalah yang sama dengan panda 1.0.0, ini bekerja untuk saya

Buka Anaconda Prompt (cmd) sebagai Administrator, lalu

conda install panda == 0.25.1

Versi panda Anda yang lebih baru akan ditimpa oleh yang lebih tua!

Eric Stralsund
sumber
1

Ubah ix dengan .loc itu akan berfungsi dengan benar.

Abidi Mohamed
sumber
0

Terima kasih.

Dalam retrospeksi saya mungkin tidak perlu menggunakan .ix, karena df ['col_header'] bekerja untuk saya, dan lebih rapi.

Diarmid Roberts
sumber
0

satu kolom:

df[['sepal width']]

dua kolom:

df[['sepal width','petal width']]

kolom khusus (pilih kolom termasuk 'panjang'):

df[[c for c in df.columns if 'length' in c]]
HelloNewWorld
sumber