Rstudio & MariaDB (в Windows!) - чтение CSV-файла с несколькими иностранными языками в столбце

0

Например, у меня есть файл csv с 3 языками в столбце.

жанр, продюсер, название, байты, место
DB 관리, R Foundation, R 3.5.1,82877232, 서피스 고
DB 관리, DB 관리 こ の ペ ー ジ, こ の ペ ー ジ, 3423, 서피스 고

Переменная производителя имеет английский (R Foundation, DB), корейский (관리) и японский (こ の ペ ー ジ)

Как это нормально открывается в r на окнах?

  • 3
    Я голосую, чтобы закрыть этот вопрос как не по теме, потому что это совет по программированию, а не вопрос.
  • 0
    Пожалуйста, попробуйте разделить ваше сообщение на вопрос и ответ.
Показать ещё 2 комментария
Теги:
csv
mariadb

1 ответ

0

Например, у меня есть файл csv с 3 языками в столбце.

жанр, продюсер, название, байты, место
DB 관리, R Foundation, R 3.5.1,82877232, 서피스 고
DB 관리, DB 관리 こ の ペ ー ジ, こ の ペ ー ジ, 3423, 서피스 고

Переменная производителя имеет английский (R Foundation, DB), корейский (관리) и японский (こ の ペ ー ジ)


Шаг 1) Вы должны сохранить файл csv с помощью utf-8

Кодировка Linux по умолчанию для utf-8. Но Windows не кодирует по умолчанию utf-8 (ex> CP949 на основе EUC-KR, CP932 на основе EUC-JP)

Если вы сохранили файл CP949 или CP932, то файл сломал корейские слова или японские слова.


Шаг 2) Установка набора символов [utf-8, utf-8_general_ci] в MariaDB (на основе MySQL)

MariaDB не кодирует по умолчанию utf-8 (набор символов: latin1)

Если вы не измените utf-8 и не отправите на английский, корейский, японский слова в MariaDB, то значения сломались. изменить на uft-8 (в папке mysql/bin my.ini) collation_server=utf8_general_ci character_set_server=utf8


Шаг 3) Установите пакет "readr" в R (или RStudio) и вызовите библиотеку "readr", используя функцию read_csv

Функция read.csv (в базовой библиотеке) работает нормально. как это
введите описание изображения здесь
Пропущенные данные dat1, dat2, dat3, dat4 dat4
dat1 <- NULL; dat1 <- read.table("list.csv", header=T, sep=","); dat2 <- NULL; dat2 <- read.csv("list.csv", header=T); dat3 <- NULL; dat3 <- read.csv("list.csv", header=T, fileEncoding="UTF-8"); dat4 <- NULL; dat4 <- read.csv("list.csv", header=T, fileEncoding="UTF-8-BOM");

Использование функции read_csv (в библиотеке "readr"), обычно работает. как это
введите описание изображения здесь

library(readr); dat <- NULL; dat <- read_csv("list.csv");


Шаг 4) Обновление базы данных с помощью "RMySQL или RMariaDB" в Rstudio (или R) и проверка базы данных

library(DBI); library(RMariaDB); con <- dbConnect(MariaDB(), user = "****", password = "****", dbname = "****", host = "****", port = ****); dbWriteTable(con,"****", dat, overwrite = FALSE, row.names = FALSE, append = T); dbDisconnect(con);

результат вроде этого (веб-страница из БД)
введите описание изображения здесь

Я надеюсь помочь некоторым людям, у которых есть проблема с кодировкой в системе Windows.

Таким образом, Linux - хорошая ОС для работы с управлением БД.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню