Многоуровневые кавычки обернуть CSV файл панды - PullRequest
0 голосов
/ 15 декабря 2018

Мой файл .csv выглядит так:

col1, col2, col3, col4, col5, col6
"a, """"b, ""string1"""""", ""string2, string3"", """", c,"
"d, """"e, ""string4"""""", ""string5, string6"", """", f,"

Я хочу прочитать этот файл в пандах.Как справиться с этими тремя проблемами в одной команде read_csv?

  • отменить строки из одинарных кавычек "" перенос?
  • отменить ячейки, содержащие запятые из четырех кавычек "" "" "" ""??
  • сохранить запятые, рассматриваемые как строки в соответствующих запятых, содержащих ячейки?

1 Ответ

0 голосов
/ 15 декабря 2018

Вы можете использовать str.replace и просто заключить двойные кавычки в пустую строку.

>>> x = '"d, """"e, ""string4"""""", ""string5, string6""'
>>> x
'"d, """"e, ""string4"""""", ""string5, string6""'
>>> x.replace('"', '')
'd, e, string4, string5, string6'

Чтобы исправить CSV-файл ...

name = 'xxx.csv'

with open(name) as f:
    csv = f.read()
with open(name, 'w') as f:
    f.write(csv.replace('"', ''))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...