楼主: 月幽影
30770 24

[学习分享] R语言读取EXCEL文件的各种方法 [推广有奖]

11
碧落侍郎 发表于 2014-9-2 16:24:59
jgchen1966 发表于 2013-6-21 19:16
如果在一个EXCEL文件中有很多相同格式但数据不同的SHEET ,并相一次读入,则用RODBC 是最方便的。。
如 本 ...
你好,请问加载rodbc之后再用file.choose()选择了一个excel文件,想要将文件中的数据打印在控制面板上该用什么函数吗?不知道为什么我用read.xlsx,一直显示“Please provide a sheet name OR a sheet index.”,但是我这个文件里面只有一个工作表

12
jgchen1966 发表于 2014-9-3 15:31:59
碧落侍郎 发表于 2014-9-2 16:24
你好,请问加载rodbc之后再用file.choose()选择了一个excel文件,想要将文件中的数据打印在控制面板上该用 ...
举个例子:
Excel 文 件名:shindex92m6to02m8.xls,它存在与你的 .RData相同的目录,否则在下面的程序要用路
                      径名。
在此Excel 文 件中有名为“shday","shweek","shmonth","szmonth"的四个sheet
则读取数据的 R 程 序为:
rm(list=ls());print(ls())#删除原有的对象
channel<-odbcConnectExcel("shindex92m6to02m8.xls")#出本运行目录Excel表中读入数据
shday<-sqlFetch(channel,"shday")
shweek<-sqlFetch(channel,"shweek")
shmonth<-sqlFetch(channel,"shmonth")
szmonth<-sqlFetch(channel,"szmonth")
odbcClose(channel)
rm(channel)#channel不再需要,就删除
print("shday");print(head(shday))
print("shweek");print(head(shweek))
print("shmonth");print(head(shmonth))#打印部分内容,以便检查
print("szmonth");print(head(szmonth))#打印部分内容,以便检查
###############################################

13
wuya100 发表于 2014-9-4 10:51:21
谢谢分享!!!!!!

14
982288920@ 发表于 2014-11-9 00:33:00
jgchen1966 发表于 2013-6-21 19:16
如果在一个EXCEL文件中有很多相同格式但数据不同的SHEET ,并相一次读入,则用RODBC 是最方便的。。
如 本 ...
你好~请问我用RODBC做query时,每次都出现这个情况:
> sqlQuery(conn,"SELECT DISTINCT  PERMNO FROM [Sheet1]")
[1] "42S02 -1305 [Microsoft][ODBC Excel 驱动程序] Microsoft Jet 数据库引擎找不到对象'Sheet1'。请确定对象是否存在,并正确地写出它的名称和路径。"
[2] "[RODBC] ERROR: Could not SQLExecDirect 'SELECT DISTINCT  PERMNO FROM [Sheet1]'"

我想知道这是为什么以及怎么解决呢?

15
铁锷未残 学生认证  发表于 2014-11-9 10:09:00
谢谢分享

16
jgchen1966 发表于 2014-11-10 15:02:08
982288920@ 发表于 2014-11-9 00:33
你好~请问我用RODBC做query时,每次都出现这个情况:
> sqlQuery(conn,"SELECT DISTINCT  PERMNO FROM [ ...
先要“excle ‘ 文件输入,然后再”sheet " 输入。。没有“excle ",何来的”sheet ".
最好仔细读读说明书。。我也无法全说全。。本人使用此法无数,从未出错过。。可能本人读了很多次说明书的原因吧,已成习惯了吧。。

17
982288920@ 发表于 2014-11-23 15:33:57
jgchen1966 发表于 2014-11-10 15:02
先要“excle ‘ 文件输入,然后再”sheet " 输入。。没有“excle ",何来的”sheet ".
最好仔细读读说明书 ...
谢谢~不过最后的原因是我microsoft的驱动和R不是一个版本的~把R的版本和驱动match就解决啦~~

18
jiangbeilu 学生认证  发表于 2014-11-23 22:38:21
用oebcConnectExcel2007可以读取xls和xlsx文件,很方便。而odbcConnectExcel()只能读取xls文件。

  1. require(RODBC)
  2. odbcConnectExcel2007()
  3. sqlFetch()
复制代码

19
financialtom 学生认证  发表于 2014-11-24 00:35:40 来自手机
jgchen1966 发表于 2014-11-10 15:02
先要“excle ‘ 文件输入,然后再”sheet &quot; 输入。。没有“excle &quot;,何来的”sheet &quot;.
最好仔细读读说明书 ...
你好,请问我在读取html网页表格数据时为什么有时候可以,有时候却是null,就是用的XML package,readHTMLTable()函数,是不是不同的html网页通过这种方式读取是不同的,有什么注意事项吗?

20
半截青尖椒 发表于 2014-12-1 20:41:02
谢谢楼主分享~~

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2025-12-24 22:55