Кодирование данных в utf-8 до использования pandas.read_csv? [Дубликат]
4 ответа
read_csv принимает параметр encoding для работы с файлами в разных форматах. В основном я использую read_csv(‘file’, encoding = «ISO-8859-1») или, альтернативно, encoding = «utf-8» для чтения, и вообще utf-8 для to_csv .
Вы также можете использовать псевдоним ‘latin1’ вместо ‘ISO-8859-1’ .
Борясь с этим некоторое время и думал, что я опубликую по этому вопросу, поскольку это первый результат поиска. Добавление тега encoding = ‘iso-8859-1 «в pandas read_csv не сработало, и не было никакой другой кодировки, продолжавшей давать UnicodeDecodeError.
Если вы передаете дескриптор файла в pd.read_csv (), вам нужно поместить атрибут encoding = в файл открытым, а не в read_csv. Очевидное в ретроспективе, но тонкая ошибка для отслеживания.
Самый простой из всех решений:
- Откройте файл csv в Sublime text editor .
- Сохраните файл в формате utf-8.
В возвышенном виде щелкните Файл -> Сохранить с кодировкой -> UTF-8
Затем вы можете прочитать свой файл, как обычно:
Если есть много файлов, вы можете пропустить возвышенный шаг.
Просто прочитайте файл, используя
и другие различные типы кодирования:
Pandas позволяет указывать кодировку, но не позволяет игнорировать ошибки, чтобы не автоматически заменять оскорбительные байты. Таким образом, нет одного размера, соответствующего всем методам, но по-разному в зависимости от фактического варианта использования.
- Вы знаете кодировку, и в файле нет ошибки кодирования , Отлично: вам нужно просто указать кодировку:
- Вы не хотите беспокоиться о вопросах кодирования и хотите, чтобы этот проклятый файл загружался, независимо от того, содержат ли какие-то текстовые поля мусор. Хорошо, вам нужно использовать кодировку Latin1 , потому что она принимает любой возможный байт как вход (и преобразует его в символ Юникода того же кода):
- Вы знаете, что большая часть файла написанный с определенным кодированием, но также содержит ошибки кодирования. Пример реального мира — это файл UTF8, который был отредактирован с помощью редактора un utf8 и который содержит некоторые строки с другой кодировкой. Pandas не предусматривает специальной обработки ошибок, но функция Python open имеет (предполагая Python3), а read_csv принимает файл, подобный объекту. Типичными параметрами ошибок, которые следует использовать здесь, являются ‘ignore’ , которые просто подавляют оскорбительные байты или (ИМХО лучше) ‘backslashreplace’ , который заменяет оскорбительные байты их защитой от обратного сбрасывания Python:
Как прочитать файл в кодировке cp1251?
Как правильно вывести файл в кодировке UTF-16LE?
Друзья! НА самом-то деле я всё правильно делаю. Вот код: import codecs f = codecs.open.
Как прочитать файл?
Всем привет! Я новичок в Python. ————————————— Мне нужно что бы эта.
Считать файл, заменить текст, сохранить файл в новой кодировке
Доброго времени суток уважаемые! Никак не могу справиться с элементарной казалось бы задачей.
Запись в файл в нужной кодировке
Доброго дня! Получаю веб-страницу через сокет, отображаю в среде — html отлично читается.
У меня все нормально. Ты с консолью виндовой работаешь? Я просто пробовал в IDLE.
Если в консоли, то тебе нужно преобразовать в данные в кодировку cp688.
С консолью Pycharm. Ну он наверное виндовую использует.
Добавлено через 3 минуты
С консолью Pycharm. Ну он наверное виндовую использует.
Добавлено через 3 минуты
спасибо, что поправил
ошибся
Добавлено через 3 минуты
DarthLenin, попробуй ещё раз с учётом изменившейся информации
кодировка — это именованный аргумент
всё правильно выдаёт, там ожидается тип буферизации
Тематические курсы и обучение профессиям онлайн Профессия Python-разработчик (Skillbox) Профессия Fullstack-разработчик на Python (Skillbox) Python-разработчик с нуля (Нетология) Fullstack-разработчик на Python (Нетология) |
Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь или здесь.
Прочитать файл в кодировке cp1251 и перевести в кодировки koi8r, iso88595, unicode, microsoft sp866
работа с кодовыми таблицами русского языка дан исходный текст , кодировка cp-1251 составить.
Как прочитать файл в DOS-кодировке ?
У меня есть файл в DOS-кодировке. Как мне считать оттуда строку, чтобы она нормально отображалась.
Как можно прочитать файл текстовый в кодировке UTF-8?
Как можно прочитать файл текстовый в кодировке UTF-8?(при чтении c помощью FileSystemObject вместо.
Как прочитать текстовый файл в кодировке Win1251 (VS2005)?
Проект: textbox и две кнопки для вывода текста в разных кодировках. Вывожу текст в textbox1 Unicod.
pandas to_csv read_csv encoding error
I build a dataframe in pandas (v21.1) (Python 3, Windows (220k rows) and write out to csv. Open in Excel and file looks fine (220k rows). Read in using pandas and now the file has an additional 40k rows and often has various encoding errors.
Have tried multiple to_csv / read_csv encoding= combinations, including: utf-8 , utf-8-sig , cp1252 , ascii and utf-16 Write out:
When reading in I often get the warning: DtypeWarning: Columns (0,1,3,4,6,7,8,9,10,12,13,14,15,16,17,18,19,20,21,22,23,25,26,27,28,29,30,31,32,37,38,39,40,41,42,43,46,47,48,49,50,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,91,92,93,94,95,96,97,98,99,100,101,102) have mixed types. Specify dtype option on import or set low_memory=False. interactivity=interactivity, compiler=compiler, result=result)
I have tried specifying the dtypes for the columns, by saving the dtypes dict when to_csv and using the same dict as input for read_csv — but it also gave an error because unexpected datatypes found, e.g. ValueError: Integer column has NA values in column 33
When I do it out/in as Excel file, it seems to work fine. When I try with Python 2.7 installation, same issue occurs.
I suspect the issue is possibly with a 3rd-party csv file that I import, which only seems to import when I use ‘cp1252’. I tried resaved this input file in Excel using utf-8 — but this hasn’t worked either.
Как прочитать файл в кодировке cp1251?
Как правильно вывести файл в кодировке UTF-16LE?
Друзья! НА самом-то деле я всё правильно делаю. Вот код: import codecs f = codecs.open.
Как прочитать файл?
Всем привет! Я новичок в Python. ————————————— Мне нужно что бы эта.
Считать файл, заменить текст, сохранить файл в новой кодировке
Доброго времени суток уважаемые! Никак не могу справиться с элементарной казалось бы задачей.
Запись в файл в нужной кодировке
Доброго дня! Получаю веб-страницу через сокет, отображаю в среде — html отлично читается.
У меня все нормально. Ты с консолью виндовой работаешь? Я просто пробовал в IDLE.
Если в консоли, то тебе нужно преобразовать в данные в кодировку cp688.
С консолью Pycharm. Ну он наверное виндовую использует.
Добавлено через 3 минуты
С консолью Pycharm. Ну он наверное виндовую использует.
Добавлено через 3 минуты
спасибо, что поправил
ошибся
Добавлено через 3 минуты
DarthLenin, попробуй ещё раз с учётом изменившейся информации
кодировка — это именованный аргумент
всё правильно выдаёт, там ожидается тип буферизации
Тематические курсы и обучение профессиям онлайн Профессия Python-разработчик (Skillbox) Профессия Fullstack-разработчик на Python (Skillbox) Python-разработчик с нуля (Нетология) Fullstack-разработчик на Python (Нетология) |
Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь или здесь.
Прочитать файл в кодировке cp1251 и перевести в кодировки koi8r, iso88595, unicode, microsoft sp866
работа с кодовыми таблицами русского языка дан исходный текст , кодировка cp-1251 составить.
Как прочитать файл в DOS-кодировке ?
У меня есть файл в DOS-кодировке. Как мне считать оттуда строку, чтобы она нормально отображалась.
Как можно прочитать файл текстовый в кодировке UTF-8?
Как можно прочитать файл текстовый в кодировке UTF-8?(при чтении c помощью FileSystemObject вместо.
Как прочитать текстовый файл в кодировке Win1251 (VS2005)?
Проект: textbox и две кнопки для вывода текста в разных кодировках. Вывожу текст в textbox1 Unicod.