受网上帖子启发,想想自己用R语言就是不断跑代码,纠正error,我也记录一下我在用R时遇到的错误。
1.R语言填坑记2:Error in make.names(vnames, unique = TRUE) : invalid multibyte string 1
出现这个问题是因为excel文件的编码方式与读取时的编码方式不统一造成的。
解决方法:
在excel保存文件的时候,选择UTF-8格式。
在R中读取的时候,指定编码类型为UTF-8。
关于读取excel文件,有两个细节:
1、双引号 “” 内的文件地址,必须用\\,单斜杠是转义符;
2、读取指定表的内容,可以通过下标索引,也可以通过表的名称。即 sheetIndex 或者 sheetName ,前者参数为纯数字,后者是字符串;
3、print输出内容的时候,如果rstudio命令窗口比较小,会把后面的列依次换行的。
----------------
> sheet2 = read.xlsx("d:\\_tmp\\Book1.xlsx", sheetName = "Sheet2" )
Error in make.names(vnames, unique = TRUE) : invalid multibyte string 1
>
> sheet2 = read.xlsx("d:\\_tmp\\Book1.xlsx", sheetName = "Sheet2" , encoding = "UTF-8")
> print(sheet2)
但是用他这个办法没解决.....原因是我具体的错误代码是error in make.names(vnames,unique=true):invalid multibyte string3
和解决问题给的代码不一样。
最后我的解决办法是将文件xls格式改成CSV格式,这样就很麻烦了,我用文件读文件,老师要不停地将csv改成功xlsx,或者反过来,很啰嗦,也很容易出错,所以我最好找个办法解决一下,要使用数据的文件统一一下。
2.error in match.arg(method):arg must be of length 1
想要用knn填补缺失值,但是运行半天只反馈回来这个结果,简单查了下,没有现成解决办法,先只用简单的插补平均值的方法处理缺失值吧
网友评论