r - 在 R 中使用西里尔字母

标签 r import cyrillic

伙计们,一个简单的问题,真的让我很生气。 你如何使用西里尔字母?导入后如何准备 xlsx 或 csv 文件以便在 R 中正确读取? 我尝试了 Google 的多种选择,以不同的格式保存,使用编码,在记事本中打开,输入 Sys.setlocale("LC_CTYPE", "ukrainian") - 对我来说没有用。

我用过

Sys.setlocale("LC_CTYPE", "ukrainian")

# Set working directory
setwd("C:~AO")

# Packages
library(xlsx)

# Read file
kyiv.dfrr <- read.xlsx2(file="Kyiv DFRR.xlsx", sheetIndex = 1, stringsAsFactors = FALSE)

kyiv.dfrr <- read.csv("Kyiv DFRR.csv", header = TRUE)

结果

                           Type Planned Planned...9.months.   Paid 
X..paid..planned..9.months. latitude
1                       ???????????  62,821              27,344 21,875                        
80.0 50.43494
2                       ???????????  40,000              20,000 12,000                        
60.0 50.45447
3                       ???????????  50,000              50,000 14,539                        
29.1 50.52310
4                      ????????????   9,490                 395      0                        
0.0 50.48074
5 ????????????????? (?????????????)   9,613               9,613  2,790                        
29.0 50.52318
6                     ?????????????   9,821               2,000      0                         
0.0 50.50171
longitude Kyiv.city.district                           MP
1  30.54683         ??????????   ????? ?????? ?????????????
2  30.50433     ??????????????  ???????? ???? ?????????????
3  30.45902        ??????????? ????????? ?????? ???????????
4  30.40263     ??????????????  ???????? ???? ?????????????
5  30.60095        ???????????     ?????? ???????? ????????
6  30.60764        ???????????     ?????? ???????? ????????

存在简单优雅的解决方案,我仍然有希望!谢谢!

最佳答案

问题似乎出在您的 R(Studio) 区域设置后面(请参阅下面的重现代码)。我会 1) 使用 readxl 来读取 XLSX 文件,2) 不要弄乱语言环境(我之前在读取 CSV 文件时遇到了同样的问题,而不是仅仅设置 encoding = "UTF-8” 更改了区域设置——它完全破坏了 RStudio 输出——只有更新 RStudio 才有帮助)。所以我会尝试重新启动或重新安装 RStudio(特别是如果您可以同时更新它的话:)。

f <- "C:/Users/Alexey/Downloads/Kyiv DFRR.xlsx"

df <- readxl::read_excel(f)
Sys.setlocale("LC_CTYPE", "ukrainian")

head(df)
# A tibble: 6 x 10
                                                                                                                             Object
                                                                                                                              <chr>
1                                                                   "друга нитка Головного міського каналізаційного колектора \r\n"
2 "об'єкт по вул. Воровського, 2, - реставрація з пристосуванням під розміщення Державного спеціалізованого мистецького навчального
3 велика окружна дорога на ділянці від просп. Маршала Рокоссовського до вул. Богатирської з будівництвом транспортної розв'язки на 
4                                             "будівля бюджетної сфери - школа-дитячий садок N 173 \"Райдуга\" по вул. Блюхера, 3а"
5                                            будівля бюджетної сфери - дошкільний навчальний заклад N 300 по вул. Радунській, 22/9а
6                                                          стадіон із штучним покриттям по вул. Драйзера, 2б, у Деснянському районі
# ... with 9 more variables: Type <chr>, Planned <dbl>, `Planned ( 9 months)` <dbl>, Paid <dbl>, `% paid/ planned (9
#   months)` <dbl>, latitude <dbl>, longitude <dbl>, `Kyiv city district` <chr>, MP <chr>

关于r - 在 R 中使用西里尔字母,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47381746/

相关文章:

php - 如何将基于西里尔字母的文本插入mysql?

r - 合并行 - 在 R 中对某些列求和而不对其他列求和

r - wordcloud2 不显示编号的颜色

r - 如何使用 Textmate 的 R Bundle 加载我的 .RProfile

javascript - 导入导出对象 JavaScript 内部的对象

python - PyCharm - 作者在导入之前出现了吗?

javascript - webworker中的importScripts,忽略引用异常

c - GTK 字符数与字节索引

r - 匹配对的条件逻辑回归

vba - 西里尔字母在 Oracle 的 VBA 中显示为问号