Excel是企业电子表格处理的事实标准格式。R本身都是处理各种文本格式,像是CSV,或者自己的二进制格式文件。让两批人可能够彼此沟通,就必须让R能够读取xlsx格式。
R专门处理Excel文件的包是xlsx。
直接在线安装
> install.packages("xlsx")
also installing the dependencies ‘rJava’, ‘xlsxjars’
trying URL 'https://mirrors.tongji.edu.cn/CRAN/bin/windows/contrib/3.6/rJava_0.9-11.zip'
Content type 'application/zip' length 832080 bytes (812 KB)
downloaded 812 KB
trying URL 'https://mirrors.tongji.edu.cn/CRAN/bin/windows/contrib/3.6/xlsxjars_0.6.1.zip'
Content type 'application/zip' length 9485571 bytes (9.0 MB)
downloaded 9.0 MB
trying URL 'https://mirrors.tongji.edu.cn/CRAN/bin/windows/contrib/3.6/xlsx_0.6.1.zip'
Content type 'application/zip' length 460695 bytes (449 KB)
downloaded 449 KB
package ‘rJava’ successfully unpacked and MD5 sums checked
package ‘xlsxjars’ successfully unpacked and MD5 sums checked
package ‘xlsx’ successfully unpacked and MD5 sums checked
The downloaded binary packages are in
C:\Users\chang\AppData\Local\Temp\RtmpqE36kp\downloaded_packages
载入包试试看
> library(xlsx)
Error: package or namespace load failed for ‘xlsx’:
loadNamespace()里算'rJava'时.onLoad失败了,详细内容:
调用: fun(libname, pkgname)
错误: JAVA_HOME cannot be determined from the Registry
居然报错。
看一下,原来是这个包依赖Java。没办法,虽然手里已经没有什么用Java的软件了,但是也要装一个了。当然这句话不包含Android手机。
安装Java
直接去Java·官网:https://www.java.com/zh_CN/
好经典 古老 的网页。点鲜艳的“免费Java下载”按钮。
直接安装默认的64位Java SE。
安装过程也是经典的windows软件安装过程。不应该会遇到麻烦。
我是有多背啊。居然点过之后就消失了。重启,用管理员身份运行才安装才正常开始。
再导入一下xlsx包
> library(xlsx)
没报错,那就是成功啦。
使用xlsx包
直接上代码看一下
> table1_1 <- read.xlsx2("e:/example/ch1/table1_1.xlsx",1)
> table1_1
运行正常。显得有点偏,用fix再看一下,没有问题。刚才那是显示的问题。
参数1指的是xlsx文件里面的sheet表的索引。注意!Excel表是从1开始索引。当然也可以用数据表名字替代。
> table1_1 <- read.xlsx2("e:/example/ch1/table1_1.xlsx","table1_1")
> table1_1
优先使用read.xlsx2
因为据说read.xlsx2比read.xlsx性能更高,或者说有些事情R比Java慢很多。
感谢阅读,欢迎关注和留言> 感谢阅读,欢迎关注和留言
量化投资与期货外汇散仙,基金保险水平也拿的出手