为什么Mac中的R&Studio无法导入中文内容的RData(win10创建)
Why R & Studio in Mac cannot import RData with Chinese content (created in win10)
这个问题我已经追了一整天了
我通过以下方式下载了教科书的练习材料:http://www.crup.com.cn/UploadFiles/jxkj/gsgl/243184/统计学基于R第二版例题和习题数据.rar
但是,这些RData在win10的R&Rstudio中运行良好,而在Mac
中无法显示汉字
win10中的Rstudio:
Rstudio 在Mac
汉字崩溃
Mac
中的 R 控制台
汉字崩溃
我在网站上搜索了很多解决方案,其中大部分是关于如何解决导入“.csv”文档时出现的问题。但我的问题是关于如何将 RData 加载到 R 中而不会导致汉字崩溃。
有的回答说要把Rstudio的"Global options"中的"default text encoding"改成"UTF-8",但是我查了Mac和Win10中的Rstudio,都是处于 "UTF-8" 模式。
所以我真的不知道真正的问题是什么。
也许有更好的全球通用解决方案,但一种方法是分别为每个对象转换编码:
load("~/Downloads/exercise1_1.RData")
exercise1_1[, 1:3]
# ָ\xb1\xea X2008\xc4\xea X2009\xc4\xea
# 1 \xb5\xcd\xca\xd5\xc8뻧 1500 1549
# 2 \xd6е\xc8ƫ\xcf»\xa7 2935 3110
# 3 \xd6е\xc8\xca\xd5\xc8뻧 4203 4502
# 4 \xd6е\xc8ƫ\xc9\u03fb\xa7 5929 6468
# 5 \xb8\xdf\xca\xd5\xc8뻧 11290 12319
names(exercise1_1) <- iconv(names(exercise1_1), from = "GB2312", to = "UTF-8")
exercise1_1 <- lapply(exercise1_1, function(x) if(is.factor(x)) as.character(x) else x)
exercise1_1 <- data.frame(lapply(exercise1_1, function(x) {
if(is.character(x))
iconv(x, from = "GB2312", to = "UTF-8")
else
x
}
))
exercise1_1[, 1:3]
# 指标 X2008年 X2009年
# 1 低收入户 1500 1549
# 2 中等偏下户 2935 3110
# 3 中等收入户 4203 4502
# 4 中等偏上户 5929 6468
# 5 高收入户 11290 12319
这个问题我已经追了一整天了
我通过以下方式下载了教科书的练习材料:http://www.crup.com.cn/UploadFiles/jxkj/gsgl/243184/统计学基于R第二版例题和习题数据.rar
但是,这些RData在win10的R&Rstudio中运行良好,而在Mac
中无法显示汉字win10中的Rstudio:
Rstudio 在Mac
汉字崩溃
Mac
中的 R 控制台汉字崩溃
我在网站上搜索了很多解决方案,其中大部分是关于如何解决导入“.csv”文档时出现的问题。但我的问题是关于如何将 RData 加载到 R 中而不会导致汉字崩溃。
有的回答说要把Rstudio的"Global options"中的"default text encoding"改成"UTF-8",但是我查了Mac和Win10中的Rstudio,都是处于 "UTF-8" 模式。
所以我真的不知道真正的问题是什么。
也许有更好的全球通用解决方案,但一种方法是分别为每个对象转换编码:
load("~/Downloads/exercise1_1.RData")
exercise1_1[, 1:3]
# ָ\xb1\xea X2008\xc4\xea X2009\xc4\xea
# 1 \xb5\xcd\xca\xd5\xc8뻧 1500 1549
# 2 \xd6е\xc8ƫ\xcf»\xa7 2935 3110
# 3 \xd6е\xc8\xca\xd5\xc8뻧 4203 4502
# 4 \xd6е\xc8ƫ\xc9\u03fb\xa7 5929 6468
# 5 \xb8\xdf\xca\xd5\xc8뻧 11290 12319
names(exercise1_1) <- iconv(names(exercise1_1), from = "GB2312", to = "UTF-8")
exercise1_1 <- lapply(exercise1_1, function(x) if(is.factor(x)) as.character(x) else x)
exercise1_1 <- data.frame(lapply(exercise1_1, function(x) {
if(is.character(x))
iconv(x, from = "GB2312", to = "UTF-8")
else
x
}
))
exercise1_1[, 1:3]
# 指标 X2008年 X2009年
# 1 低收入户 1500 1549
# 2 中等偏下户 2935 3110
# 3 中等收入户 4203 4502
# 4 中等偏上户 5929 6468
# 5 高收入户 11290 12319