@i1yas

Почему pandas не пропускает строку?

Есть такой csv-файл:
a,b,c
1,2,3
1,2,3,4

Попытка прочитать ожидаемо приведет к ошибке:
df = pd.read_csv("./test.csv")

И если добавить флаг error_bad_lines=False, то строка с лишней колонкой будет пропущена:
df = pd.read_csv("./test.csv", error_bad_lines=False)
print(df)
   a  b  c
0  1  2  3


Проблема с таким файлом:
a,b,c
1,2,3,4


df = pd.read_csv("./test.csv")
print(df)
   a  b  c
1  2  3  4


Флаг error_bad_lines=False не помогает.
Как сделать, чтобы в обоих случаях строки с лишними столбцами пропускались?
Версия pandas=1.1.5
  • Вопрос задан
  • 95 просмотров
Пригласить эксперта
Ответы на вопрос 1
@dmshar
Если в первой строке у вас названия колонок, то это надо указывать явно. Для этого используйте параметр header. Неплохо бы еще и index_col указать.
А для работы с пропущенными данными есть несколько параметров - keep_default_na, na_filter, na_values - соответствующей комбинацией которых можно добиться чего угодно.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы