Как написать вывод Unicode для .csv, который будет использоваться в Excel?

У меня есть набор данных, содержащий китайские символы, которые я работал над использованием UTF-8. Часть данных выглядит так:

encod cKeyword UTF-8 <U+5169><U+7528> <U+5305> 27 bloide herme UTF-8 <U+593E> <U+62C9><U+934A> <U+9577> loewe UTF-8 <U+5169><U+7528> <U+5305> <U+8FF7><U+4F60> 31 lim pashli phillip UTF-8 <U+5305> <U+624B><U+62FF> givenchy pandora 

Когда я использую write.csv(data, "file.csv", fileEncoding = "UTF-8") , я получаю CSV-файл, который при открытии отображает то же самое в Excel. Но мне нужно, чтобы Unicode отображался как его китайский символ.

Как я могу заставить его писать китайские символы?

Ваши символы представлены кодами Unicode .

 Python 2.7.10 >>> s = '\u5169' # <U+5169> represented in unicode >>> print s.decode('unicode_escape')兩 

В Excel следующая функция преобразует вашу кодовую точку в символьное представление:

 =UNICHAR(HEX2DEC(5169)) 

Или, вот более полный пример. Следующий код Python 2.7 с unicodecsv ( pip install unicodecsv ) преобразует ваш вывод R ( r.csv ) в вход Excel ( excel.csv ):

 import unicodecsv as csv, re csvwrite = open('excel.csv', 'wb') w = csv.writer(csvwrite, encoding='utf-8') with open('r.csv', 'rb') as csvread: rows = csv.reader(csvread, delimiter='\t') for row in rows: p = re.compile('\<U\+([0-9a-fA-F]+)\>') iterator = p.finditer(row[1]) for match in iterator: s = '%s%s' % ('\u', match.group().replace('U+', '').replace('<', '').replace('>', '')) row[1] = row[1].replace(match.group(), s.decode('unicode_escape')) w.writerow(row) 

Возьмите сгенерированный excel.csv и импортируйте в Excel (а не просто открыть), но после этого сообщения.

У меня нет R, но может также быть возможно, чтобы он записывал вывод в формате Excel, понимая это и это .

Надеюсь это поможет..

– ab1

  • Преобразование UTF-8 в ANSI с использованием VBA
  • Кодирование Проблема при чтении файла Excel через PHP COM
  • как сохранить строку в формате «utf-8» в .xlsx, используя pandas to_exel (to_csv может сохранить его как .csv)
  • UTF 8-байтовая длина строки в microsoft excel
  • Могу ли я экспортировать данные Excel с UTF-8 без спецификации?
  • UnicodeDecodeError при попытке изменить точки на запятые в Excel
  • Проблема с кодировкой UTF- / csv для excel
  • Как преобразовать имена файлов в iso8859_6 в utf-8?
  • Экспорт строк Excel в текстовые файлы с кодировкой UTF-8
  • Чтение файла excel с кодировкой «UTF-8» с использованием пакета xlsx, превышение верхнего предела GC, работа чтения в течение длительного времени без остановки
  • Кириллический алфавит на английском или латинском языке
  • Давайте будем гением компьютера.