Проблемы с чтением CSV-файла с запятыми и символами в пандах

Я пытаюсь прочитать файл csv с помощью pandas, и в файле есть столбец под названием «Теги», который состоит из пользовательских тегов и имеет теги типа «,», «», 1950-е, 16-й век. Поскольку они предоставляются пользователю, есть много специальных символов, которые вводятся по ошибке. Проблема в том, что я не могу открыть файл csv с помощью pandas read_csv. Он показывает ошибку: Cparser, данные токенизации ошибок. Может кто-нибудь помочь мне с чтением файла csv в панды?

One Solution collect form web for “Проблемы с чтением CSV-файла с запятыми и символами в пандах”

Хорошо. Начиная с плохо отформатированной CSV мы не можем читать:

>>> !cat unquoted.csv 1950's,xyz.nl/user_003,bad, 123 17th,red,flower,xyz.nl/user_001,good,203 "",xyz.nl/user_239,not very,345 >>> pd.read_csv("unquoted.csv", header=None) Traceback (most recent call last): File "<ipython-input-40-7d9aadb2fad5>", line 1, in <module> pd.read_csv("unquoted.csv", header=None) [...] File "parser.pyx", line 1572, in pandas._parser.raise_parser_error (pandas/src/parser.c:17041) CParserError: Error tokenizing data. C error: Expected 4 fields in line 2, saw 6 

Мы можем сделать более приятную версию, воспользовавшись тем, что последние три столбца хорошо себя ведут:

 import csv with open("unquoted.csv", "rb") as infile, open("quoted.csv", "wb") as outfile: reader = csv.reader(infile) writer = csv.writer(outfile) for line in reader: newline = [','.join(line[:-3])] + line[-3:] writer.writerow(newline) 

который производит

 >>> !cat quoted.csv 1950's,xyz.nl/user_003,bad, 123 "17th,red,flower",xyz.nl/user_001,good,203 ,xyz.nl/user_239,not very,345 

и тогда мы можем прочитать его:

 >>> pd.read_csv("quoted.csv", header=None) 0 1 2 3 0 1950's xyz.nl/user_003 bad 123 1 17th,red,flower xyz.nl/user_001 good 203 2 NaN xyz.nl/user_239 not very 345 

Однако я хотел бы изучить эту проблему в источнике и получить данные в переносимом формате. Трюки, подобные этому, не нужны, и было бы очень легко восстановить его.

  • Применение сжатия GZIP к CSV в Python Pandas
  • Как преобразовать .tsv в .csv?
  • Чтение и запись CSV-файлов, включая unicode с Python 2.7
  • двойные кавычки в csv can not read with pandas
  • как очистить сайт, в котором URL-адрес страницы не изменяется, а следующая кнопка добавляет данные под одной и той же страницей URL-адреса
  • Pandas df.to_csv ("file.csv" encode = "utf-8") все еще дает символы мусора для знака минус
  • Скребок: добавьте данные, сохраненные как изображение в файл CSV в python 3.5
  • Как отключить цитирование в Python 2.4 CSV-ридере?
  •  
    Interesting Posts for Van-Lav

    Динамическая сортировка с помощью Redis

    django-rest-framework принимает данные JSON?

    Поток больших обучающих и тестовых файлов в DNNClassifier от Tensorflow

    Django: несколько шаблонов url, начиная с корневого распространения через файлы

    matplotlib.pyplot против matplotlib.pylab

    Свертка двух трехмерных массивов с дополнением с одной стороны слишком медленная

    Извлечение последовательностей из файла FASTA на основе записей в отдельном файле

    Как преобразовать значения строк в dataframe в метки столбцов в Python после groupby?

    Проблемы с внедрением IronPython в C # (отсутствующий компилятор требуется члену Microsoft.CSharp.RuntimeBinder.Binder.InvokeMember '

    wxPython 2.9 на Mac Os X

    Openshift Tornado WebSocket (Demo) не отвечает

    Измените файл DBF

    Должно ли использование памяти увеличиваться при использовании ElementTree.iterparse () при очистке () деревьев?

    Стрип / обрезать все значения фрейма данных

    Python: Получить индекс словаря в списке

    Python - лучший язык программирования в мире.