Как экспортировать кадр данных pandas, содержащий строки с акцентированными символами, в файл CSV, не получая никаких дополнительных символов в выходном файле?

Я пытался экспортировать фреймворк данных pandas с акцентированными символами в нескольких столбцах в csv. При печати в блокноте iPython строка выглядит просто отлично.
Например, кадр данных выглядит следующим образом:

  col1 col2
1 001  Éxamplé

но когда я экспортирую кадр данных в CSV, используя функцию df.to_csv, используя кодировку utf-8, вывод в файле CSV выглядит следующим образом:

  col1 col2
1 001  Éxamplé

тогда как желаемый результат:

  col1 col2
1 001  Éxamplé

Как мы можем сделать это, не меняя персонажей?


person soham_dhole    schedule 08.08.2020    source источник
comment
Он отлично работает в моей системе   -  person bigbounty    schedule 08.08.2020
comment
Вам удалось это сделать?   -  person Geom    schedule 16.08.2020


Ответы (2)


Это должно работать в большинстве случаев.

data.to_csv("Data.csv", encoding="utf-8")

Но очень сложно сказать, что вам нужно, не зная специфики. Текст на иностранном языке? Какое программное обеспечение вы используете для просмотра файла после его сохранения? Это может быть из-за этого программного обеспечения, а не из-за самого файла. Обязательно ознакомьтесь со стандартной кодировкой Python здесь.

person Geom    schedule 08.08.2020
comment
Я использую ту же строку кода, которой вы поделились, и я использую MS Excel для просмотра файлов. - person soham_dhole; 08.08.2020
comment
Я быстро проверил, и мне кажется, что Excel вызывает проблему. Попробуйте открыть файл с помощью pandas. Это выглядит нормально? Если да, то проблема из-за Excel. попробуйте это: itg .ias.edu/content/ Удачи! - person Geom; 08.08.2020
comment
С пандами все в порядке. Я вижу, что строка именно такая, как я хочу в iPython NB. но когда я открываю файл excel, он изменяется. По вашему предложению я попытался использовать функцию «utf8_decode()» в Excel, но в Excel 2016 такой функции нет. Спасибо :) - person soham_dhole; 08.08.2020
comment
Извините, я не эксперт в Excel :) возможно, эта ссылка поможет? itg.ias. образование/контент/ - person Geom; 08.08.2020

df.to_csv(filename,encoding='utf-8-sig')

Попробуйте этот режим, у меня работает.

person Ahsan Munir    schedule 28.07.2021