df = df.reset_index(drop=True) выдает ошибку 'NoneType' object has no attribute 'reset_index'

df_drop = df.drop([0,2,4])


df_drop = df_drop.reset_index(drop=True)

AttributeError: 'NoneType' object has no attribute 'reset_index'

Необходимо заресетить индекс по нулевой оси.


Ответы (1 шт):

Автор решения: CrazyElf

Не воспроизводится. Даже если в исходном датафрейме не останется вообще данных после удаления строк через drop, такую ошибку нельзя будет получить. Единственная возможность получить именно такую ошибку именно в этом месте - это использовать в функции drop параметр inplace=True, при использовании этого параметра Pandas записывает результат обратно в датафрейм, а функция возвращает значение None, которое и присваивается в итоге в df_drop:

df_drop = df.drop([0,2,4], inplace=True)
      5 df_drop = df.drop([0,2,4], inplace=True)
----> 6 df_drop = df_drop.reset_index(drop=True)

AttributeError: 'NoneType' object has no attribute 'reset_index'

Либо у вас ещё есть какие-то строки между drop и reset_index, которые вы нам не показали.

→ Ссылка