AttributeError: Obiekt „DataFrame” nie ma atrybutu „ix”

9

Otrzymuję powyższy błąd, gdy próbuję użyć atrybutu .ix ramki danych pandy do wyciągnięcia kolumny, np. Df.ix [:, 'col_header']. Skrypt działał od rana, ale dziś po południu uruchomiłem go w nowym środowisku linux ze świeżą instalacją Pandas. Czy ktoś jeszcze widział ten błąd? Szukałem tu i gdzie indziej, ale nie mogę go znaleźć.

Diarmid Roberts
źródło
3
Używałeś starszej wersji pand. Zobacz? stackoverflow.com/questions/43838999/pandas-replacement-for-ix
StupidWolf

Odpowiedzi:

7

próbować df.iloc[:, 'col_header']

.ix jest przestarzałe

Dr_Hope
źródło
2

miałem ten sam problem z pandami 1.0.0, to zadziałało dla mnie

Otwórz Anaconda Prompt (cmd) jako Administrator, a następnie

conda install panda == 0.25.1

Twoja nowsza wersja pand zostanie zastąpiona starszą!

Eric Stralsund
źródło
1

Zmień IX przez .loc, będzie działać poprawnie.

Abidi Mohamed
źródło
0

Dzięki.

Z perspektywy czasu prawdopodobnie nie musiałem używać .ix, ponieważ df ['col_header'] działa dla mnie i jest ładniejszy.

Diarmid Roberts
źródło
0

jedna kolumna:

df[['sepal width']]

dwie kolumny:

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

kolumny specjalne (wybierz kolumnę obejmują „długość”):

df[[c for c in df.columns if 'length' in c]]
HelloNewWorld
źródło