openxlsx包,read.xlsx check.names=false仍放置一个。列名
通常我使用Tidyverse通过read_excel命令读取excel文件,但是我遇到了可怕的“未知或未初始化列”错误,该错误指向不存在的列,然后通过工作流警告不存在的列 所以我决定使用openxlsx来读取excel文件。一切都进行得很顺利,直到我意识到openxlsx认为带有空格的列名在语法上不正确,它增加了一个错误。替换空白。所以“客户名称”变成了“Customer.Name” 我尝试使用check.names=FALSE命令使标题保持不变,但是包似乎忽略了这个命令 许多标题可能在单词之间有多个空格,格式必须保持不变。我不能使用依赖Java的excel软件包,因为我们公司已经阻止了它 如何强制openxlsx不使用标题openxlsx包,read.xlsx check.names=false仍放置一个。列名,r,excel,openxlsx,R,Excel,Openxlsx,通常我使用Tidyverse通过read_excel命令读取excel文件,但是我遇到了可怕的“未知或未初始化列”错误,该错误指向不存在的列,然后通过工作流警告不存在的列 所以我决定使用openxlsx来读取excel文件。一切都进行得很顺利,直到我意识到openxlsx认为带有空格的列名在语法上不正确,它增加了一个错误。替换空白。所以“客户名称”变成了“Customer.Name” 我尝试使用check.names=FALSE命令使标题保持不变,但是包似乎忽略了这个命令 许多标题可能在单词之间
我正在使用的代码示例如下:
IMACS这一切都归功于@Matt
一起使用readxl和read_excel是一种享受
IMACS <- readxl::read_excel("//zfsstdscun001a.rz.com/UKGI_Pricing/Bus_Insights/R_Scripts/CAT Risks/IMACSV2.xlsx",
sheet = "IMACS")
IMACS这一切都归功于@Matt
一起使用readxl和read_excel是一种享受
IMACS <- readxl::read_excel("//zfsstdscun001a.rz.com/UKGI_Pricing/Bus_Insights/R_Scripts/CAT Risks/IMACSV2.xlsx",
sheet = "IMACS")
IMACS试试sep.names=“”
,默认设置为“
你好,马特,谢谢你的提示。它确实消除了这个问题。所有只在单词之间使用一个空格的标题现在都是正确的。但是那些有多个空间格式的文件现在只是一个空间。这是一个糟糕的命名约定,我一直在努力反对维护它,但他们有其他为旧文件的确切结构设置的进程,所以我必须维护它。为什么不使用readxl::read\u xlsx
?现在这似乎很有魅力,但我不确定它是如何工作的。它像tidyverse read_xlsx命令一样读取它,所以我不必再担心sep.names了。在dplyr中给出不存在列的问题的一个文件现在也可以正常工作。在intererest之外,命令到底在那里做什么?**在这里找到答案:*谢谢你的帮助,马特@Matt你能把你的答案贴出来吗?这样我就可以把它标记为正确的?试试sep.names=“
”,因为默认值是“
嗨,Matt,谢谢你的提示。它确实消除了这个问题。所有只在单词之间使用一个空格的标题现在都是正确的。但是那些有多个空间格式的文件现在只是一个空间。这是一个糟糕的命名约定,我一直在努力反对维护它,但他们有其他为旧文件的确切结构设置的进程,所以我必须维护它。为什么不使用readxl::read\u xlsx
?现在这似乎很有魅力,但我不确定它是如何工作的。它像tidyverse read_xlsx命令一样读取它,所以我不必再担心sep.names了。在dplyr中给出不存在列的问题的一个文件现在也可以正常工作。在intererest之外,命令到底在那里做什么?**在这里找到答案:*谢谢你的帮助,马特@马特,你能把你的答案贴出来吗,这样我就可以把它标记为正确的?