當我嘗試運行sqlFetch
語句時,我間歇性地收到以下錯誤。從excel中獲取數據R
Error in odbcTableExists(channel, sqtable) :
‘Sheet20’: table not found on channel
當我嘗試運行sqlFetch
語句時,我間歇性地收到以下錯誤。從excel中獲取數據R
Error in odbcTableExists(channel, sqtable) :
‘Sheet20’: table not found on channel
odbcTableExists
是RODBC
包的內部函數。這行代碼
if (abort && !ans)
stop(sQuote(tablename), ": table not found on channel")
意味着表名存在問題(很明顯)。仔細檢查表名的大小寫,即使sql語句不區分大小寫R是!
如果不是問題,請嘗試從gdata
包中獲取read.xls
功能。它依靠一個Perl庫將excel電子表格轉換爲csv,然後致電read.table
。這意味着您可以將read.xls
的任何參數傳遞給read.table
,這有時非常有用。
希望有所幫助。
如果您不滿意ODBC,我建議您看看XLConnect或其他Excel界面包之一。
直接從Excel中獲取數據很難,難道你不能將你的數據導出爲.csv格式嗎? – Stijn 2013-04-11 09:38:38
我同意@Stijn很難從excel中導入數據,但並非總是如此。我們能否看到一個數據的例子(可能是一張表的截圖)? – 2013-04-11 09:44:51
你可以使用'xlsx'包的'read.xlsx'函數? – JT85 2013-04-11 11:11:17