我对write.xlsx2
R包的xlsx
功能有疑问。例如,请参阅下面的代码。
main_path<-"~/mydir/"
read.xlsx2(paste0(main_path,"my_input_excel.xlsx"), sheetIndex=1)
a<-1
write.xlsx2(a, paste0(main_path,"my_output_excel.xlsx"), sheetName="Sheet1", col.names=TRUE, row.names=FALSE, append=FALSE)
虽然read.xlsx2
函数工作正常,write.xlsx2
函数会给出错误
.jnew("java/io/FileOutputStream", jFile)
中的错误:
java.io.FileNotFoundException:/mydir/my_output_excel.xlsx(没有这样的 文件或目录)
当我删除paste0
部分并只写文件名时,一切都很好。所以问题是定义路径。
p.s我想知道,也许write.xlsx
会忽略波浪号~
,因此路径定义会变成垃圾。
答案 0 :(得分:6)
用“Users //”替换“〜/”适用于Mac(也可能适用于Linux)。但是,read.xlsx
和write.xlsx
如何以这样一种根本的方式发挥作用仍然让我感到不快。