使用RODBC读取包含多个标题的Excel文件

使用RODBC读取包含多个标题的Excel文件,r,rodbc,R,Rodbc,我有一个Excel文件,它被修改得非常漂亮,我正在从中提取一些数据。“柱头”有两层,例如: Date Month Day Year 12 5 2012 12 6 2012 12 12 2012 其中月/日/年都嵌套在日期下。副标题足够清楚,我不需要名义上的顶行标题。但是,最下面一行对于识别变量很有用。此外,当我使用RODBC连接阅读这些内容时,令我懊恼的是,我意识到第二行被视为数据元素,并且与XLS模式中的标签不一致。任何字符变量都有一个准确的标题,但是数值列返回

我有一个Excel文件,它被修改得非常漂亮,我正在从中提取一些数据。“柱头”有两层,例如:

Date
Month Day Year
12    5   2012
12    6   2012
12    12   2012
其中月/日/年都嵌套在日期下。副标题足够清楚,我不需要名义上的顶行标题。但是,最下面一行对于识别变量很有用。此外,当我使用RODBC连接阅读这些内容时,令我懊恼的是,我意识到第二行被视为数据元素,并且与XLS模式中的标签不一致。任何字符变量都有一个准确的标题,但是数值列返回第二个标题缺少的值,而不管我从查询返回多少行

> X <- sqlFetch(my.xls, 'this table')
> head(X)

Date F2 F3
NA   NA NA
12   5  2012
12   6  2012
12   12 2012

> X <- sqlQuery(my.xls, 'select top 1 * from "this table$"')
> X
NA NA NA
>X头(X)
日期F2 F3
娜娜娜
12   5  2012
12   6  2012
12   12 2012
>X X
娜娜娜

如何从第二个标题中获取这些文字值?

Package
XLConnect
能够提取相关信息。我认为这里的问题在于Windows的ODBC驱动程序无法处理Excel的一些特殊灵活性,例如强制执行变量的列范围格式。这只是一个关于这个古怪错误的斯特劳曼论点。

我可能更容易使用XLConnect或xlsx从Excel中提取这样的数据。除了Jorans的评论之外,根据我的经验,XLConnect比xlsx更容易使用,更不容易出错。特别是在这里讨论的情况下,XLConnect有点不喜欢包地狱,它做到了这一点。我认为这让事情变得容易多了。谢谢