[R] RJDBC to OpenOffice Calc as RODBC to MS Excel
Prof Brian Ripley
ripley at stats.ox.ac.uk
Fri Dec 14 08:31:09 CET 2007
On Fri, 14 Dec 2007, Metz, Thomas (IRRI) wrote:
> Under Windows, I have used RODBC to connect to Excel spreadsheets as per
> the example below:
>
> library(RODBC);
> connect = odbcConnectExcel("testdata.xls");
> query = "SELECT [data$.ethn], [data$.sex], [data$.age],
> [data$.height], [data$.weight],
> [label$.label]
> FROM [data$], [label$]
> WHERE [data$.ethn] = [label$.ethn];"
> data = sqlQuery(connect, query);
> odbcClose(connect);
>
> [data$] and [label$] are two named sheets in the Excel spreadsheet
> testdata.xls. [.ethn], [.sex], [.age], [.height], [.weight], and
> [.label] are cloumn names that appear in the first row in the sheets. I
> can also have UNION queries that allow me to overcome the spreadsheet
> row limitation of a single sheet. The idea is to allow normalization of
> data in a spreadsheet and leveraging the power of SQL, without using a
> database.
>
> Can the same be done under Windows (Linux?) with OpenOffice Calc using
> RJDBC? Are there ODBC drivers for OpenOffice Calc?
An awful lot of that is Microsoft warts on SQL, so it will not be
portable. But in a more standard syntax (drop the [] and $) it should be
doable over any connection that supports SQL queries.
The question is whether OO calc has suitable drivers as an ODBC/JDBC
server. Not a question for this list! (I suspect the answer is no:
Microsoft's drivers effectively use the Access engine to work with
spreadsheet files and even plain text. I don't even see drivers for OO
base.)
> I know that the right solution would be to use a database, but this is
> outside the comfort zone of many users who rely mainly on spreadsheets
> to collect, manipulate and analyze their data.
>
> Thomas Metz
> International Rice Research Institute
> Philippines
--
Brian D. Ripley, ripley at stats.ox.ac.uk
Professor of Applied Statistics, http://www.stats.ox.ac.uk/~ripley/
University of Oxford, Tel: +44 1865 272861 (self)
1 South Parks Road, +44 1865 272866 (PA)
Oxford OX1 3TG, UK Fax: +44 1865 272595
More information about the R-help
mailing list