Как справиться с немного разными столбцами при сканировании нескольких файлов CSV?Python

Программы на Python
Anonymous
 Как справиться с немного разными столбцами при сканировании нескольких файлов CSV?

Сообщение Anonymous »

У меня есть папка, содержащая тысячи файлов CSV, которые я хотел бы отсканировать с помощью ленивого кадра PL.
Сканирование на самом деле работает нормально, но когда я пытаюсь получить или собрать df, я получаю сообщение «ShapeError: невозможно добавить к кадру данных шириной 63 с кадром данных шириной 67».
Это означает, что есть несколько файлов CSV. содержащий больше столбцов, чем другие. Я проверил, что существует 4 уникальных набора имен столбцов. Некоторые файлы CSV содержат дополнительную информацию по сравнению с другими.
Идеальным результатом был бы фрейм данных, содержащий все возможные столбцы, и если есть файлы, которые не содержат этих конкретных «дополнительных» столбцов, они останутся пустыми.
Текущий код:

Код: Выделить всё

df = pl.scan_csv(r"path\*.csv", sep=";", infer_schema_length=0)
df.collect(streaming=True).write_parquet("new_file.parquet")
Как можно было бы с этим справиться?

Подробнее здесь: https://stackoverflow.com/questions/757 ... -csv-files

Вернуться в «Python»