Похоже, в одном из ваших CSV-файлов неверное количество столбцов. Он находится в строке 110853. Вы можете добавить тестовый код для устранения неполадок, например:
import glob
import pandas as pd
path = '/content/gdrive/My Drive/Datapoints/*.txt'
dataframes = []
for filename in glob.iglob(path):
try:
data = pd.read_csv(filename, header=None, delimiter='\t')
data.head()
except pd.errors.ParserError:
print(f'Error in file: {filename}')
raise
Это должно распечатать имя файла, вызывающего проблему.
Обратите внимание, что я изменил От glob.glob(path)
до glob.iglob(path)
, что, вероятно, не будет иметь большого значения, если только у вас нет огромного количества файлов. iglob
дает вам итератор, тогда как glob
дает список, а затем «за кулисами» таким же образом использует метод list.__iter__
. iglob
будет немного более эффективным и немного более pythoni c.
Кроме того, блок except
заканчивается оператором raise
, что обычно является хорошей практикой при обработке исключений. , так как предотвращает потерю информации об ошибке. Это также остановит обработку любых дополнительных файлов, что хорошо в ситуациях, когда ошибка не подлежит исправлению, а код, вызвавший ошибку, не должен продолжать работу.