Python CSV имеет дело с запятой внутри столбца - PullRequest
0 голосов
/ 03 мая 2018

Работа с CSV-файлом, содержащим текстовые данные романов.

book_id, title, content
1, book title 1, All Passion Spent is written in three parts, primarily from the view of an intimate observer. 
2, Book Title 2,  In particular Mr FitzGeorge, a forgotten acquaintance from India who has ever since been in love with her, introduces himself and they form a quiet but playful and understanding friendship. It cost 3,4234 to travel. 

Текст в столбце содержимого имеет запятые, и, к сожалению, при попытке использовать pandas.read_csv вы получаете pandas.errors.ParserError: Error tokenizing data. C error:

Есть некоторые решения этой проблемы, но ни одно из них не сработало. Пытался прочитать как обычный файл, а затем передал данные фрейма не удалось. SO - Решение

1 Ответ

0 голосов
/ 03 мая 2018

Вы можете попробовать прочитать ваш файл, а затем разделить содержимое, используя str.split(",", 2), а затем преобразовать результат в DF.

Ex:

import pandas as pd
content = []
with open(filename, "r") as infile:
    header = infile.readline().strip().split(",")
    content = [i.strip().split(",", 2) for i in infile.readlines()]

df = pd.DataFrame(content, columns=header)
print(df)

Выход:

  book_id          title                                            content
0       1   book title 1   All Passion Spent is written in three parts, ...
1       2   Book Title 2    In particular Mr FitzGeorge, a forgotten acq...
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...