выполняю команду из скрипта, например library(dplyr)
то в консоли выводится нормальный русский:
Присоединяю пакет: ‘dplyr’
Если же команду выполняю из файла Rmd (Ctrl+Shift+Enter), то кириллица не отображается и ромбики:
����������� �����: �dplyr�
Куда копать?
Sys.setlocale("LC_ALL","Russian") делал:
[1] "LC_COLLATE=Russian_Russia.1251;LC_CTYPE=Russian_Russia.1251;LC_MONETARY=Russian_Russia.1251;LC_NUMERIC=C;LC_TIME=Russian_Russia.1251"
Есть 3 сущности, которые в сочетаниях могут дать проблемы: 1) кодировка ввода (консоль), 2) кодировка вывода (консоль), 3) кодировка файла. Пример выше на линуксе воспроизводится таким образом: > s <- "Присоединяю пакет: ‘dplyr’" > iconv(s, "utf8", "cp1251") [1] "\xcf\xf0\xe8\xf1\xee\xe5\xe4\xe8\xed\xff\xfe \xef\xe0\xea\xe5\xf2: \x91dplyr\x92" > cat(iconv(s, "utf8", "cp1251")) ����������� �����: �dplyr� То есть ввод в UTF-8 конвертируется в CP1251.
Обсуждают сегодня