我有几百个xls
文件,其中有不正确的数据。在R中生成xls文件,并在列名顶部标题
我需要打开它们进行更正并保存它们。
进行更正是一件小事,所以我已经为此编写了代码,诀窍是每个工作表都有一个从第3行开始的表,前两行包含合法标题。
我习惯于使用readxl
软件包,但它不提供保存电子表格的工具。所以今天我一直在试验xslx
包,但我不太清楚如何使它工作。
在readr
我可以用下面的写有免责声明csv
文件:
write_csv(Disclaimer, filepath,col_names = FALSE)
write_csv(my.data.frame,filepath, col_names = TRUE,append =TRUE)
在xlsx
这不起作用:
write.xlsx(filepath,Disclaimer,"Sheet1",col.names = FALSE)
write.xlsx(filepath,my.data.frame,"Sheet1",col.names = TRUE,append=TRUE)
这yeilds java错误:
java.lang.IllegalArgumentException: The workbook already contains a sheet of this name
所以我的问题是你怎么能写一个xls
文件(或者xlsx
而不是csv
),以便它在相关表格上方具有标题。
为了记录我的工作簿有两张纸,两张纸都有免责声明,但是它们包含不同的表格。
我真的希望我可以离开excel文件,但我需要保持原始格式。
此外,我打算使用其他软件包,但我不熟悉其他软件包(我们说的时候正在研究XLConnect
)。
为什么不试试'readr :: write_excel_csv'? – yeedle
嗨@yeedle感谢您的输入,即使当我将文件扩展名覆盖到'xls'(警告提示扩展名与文件格式不匹配)时,也会创建'csv'文件。这里是我测试这个'write_excel_csv(data.frame(a = c(1,1,1,1),b = c(“A”,“B”,“C”,“D”)),“。 /test.xls“)',这是你的想法? – sgp667
是的。我的错。我认为这写'xls'文件 – yeedle