1、读取数据编码问题
读取csv文件出现中文乱码方案,增加编码格式参数
read.csv(trainPath,header=TRUE,stringsAsFactors=TRUE,encoding = "UTF-8")
保存csv文件中出现乱码,编码格式参数
write.csv(outp, file = path, quote = F, fileEncoding = "UTF-8") #存储utf-8也乱码,我的电脑有时会发疯,有时又不会
source 加载R脚本中文乱码
source("core.R",encoding="utf-8")
RStudio中脚本中文乱码,编码格式设置:tools -> global option…., 设置为UTF-8,最后,在打开文件的时候,选择File -> Reopen with encoding菜单,选择我们使用UTF-8编码打开文件,这样子就可以正确地显示中文了。
R语言环境的显示问题
sessionInfo() Sys.getlocale() Sys.setlocale(category = "LC_ALL",local="us") Sys.setlocale(category = "LC_ALL",local="chinese")
2、保存数据编码问题(win中)
由于用Rstudio设置了保存的编码都用UTF-8,所以在保存文件时(特别是csv文件),经常遇到乱码的现象,比如使用data.table:::fwrite()、自带的write.csv()、readr:::write_csv()都乱码
产生的原因:
因为excel打开文件时默认使用unicode的编码方式(还有的网友说是默认以ANSI编码方式打开,待考)。在Unicode基本多文种平面定义的字符(无论是拉丁字母、汉字或其他文字或符号),一律使用2字节储存。恰恰utf-8是1字节的存储方式,所以excel直接打开时会出现乱码。
解决办法:
- 方法1、数据导入–不建议
打开 Excel,执行“数据”->“自文本”,选择 CSV 文件,出现文本导入向导,选择“分隔符号”,下一步,勾选“逗号”,去掉“ Tab 键”,下一步,完成,在“导入数据”对话框里,直接点确定。导入之后,所有汉字显示正常,乱码问题解决。
万一这个文本里面的有逗号,巧好分割时候是逗号(csv文件是以逗号进行存储的),这就会对不齐了,产生新的问题
- 方法2、先另存再打开
使用记事本打开CSV文件,“文件”->“另存为”,编码方式选择ANSI,保存完毕后,用EXCEL打开这个文件就不会出现乱码的情况。
不会乱码以后选择另存为excel
- 方法3、用readr:::write_excel_csv()函数解决
直接用write_excel_csv()这个函数就可以解决上述问题
3、加载java问题
首先下载java ,把java加入环境变量,测试是否安装成功,在cmd命名下输入: java -version,返回
C:\Users\zsc>java -version java version "1.8.0_151" Java(TM) SE Runtime Environment (build 1.8.0_151-b12) Java HotSpot(TM) 64-Bit Server VM (build 25.151-b12, mixed mode)
如果上述都没问题,在R中运行rjava还是报错怎么办?比如,导入包library(xlsx)的时候,出错:
> library(xlsx) 载入需要的程辑包:rJava Error: package or namespace load failed for ‘rJava’: loadNamespace()里算'rJava'时.onLoad失败了,详细内容: 调用: inDL(x, as.logical(local), as.logical(now), ...) 错误: unable to load shared object 'D:/Program Files (x86)/R/R-3.4.2/library/rJava/libs/x64/rJava.dll': LoadLibrary failure: 找不到指定的模块。 Error: 无法载入程辑包‘rJava’
解决方法:因为在运行R的过程中,通常会需要调用rJava.dll来运行虚拟环境。这种情况,一般是系统中装了JAVA环境后安装其他软件的时候再次装了JAVA的类库rJava.dll,R的运行环境无法调用确认项。找到自己安装的JAVA环境,去配置R的系统环境中的rJava.dll:
Sys.setenv(JAVA_HOME='D:/Program Files (x86)/Java/jdk1.8.0_144/jre')
再次运行library(xlsx),就可以了!(不过每次都要设置,可以在R的配置文件中更改哦!)
4、ggplot2作图标题无法居中
好像新版的ggplot2包标题默认居左,只需要在作图函数后面加上
theme(plot.title = element_text(hjust = 0.5))
这行就好了
5、R更新
Windows系统中使⽤installr 套件的方式来更新R。建议在R终端机(termianl)中操作。
install.packages("installr") # 安装installr
installr::updateR() # 未来要更新的R的时候,只要执行这行即可