[R] Getting data from an *.RData file into a data.frame object.

Duncan Murdoch murdoch.duncan at gmail.com
Fri Aug 12 21:23:43 CEST 2011


On 12/08/2011 3:12 PM, Ed Heaton wrote:
> Hi, all.
>
> I'm new to R.  I've been a SAS programmer for 20 years.
>
> I seem to be having trouble with the most basic task - bringing a table in
> an *.RData file into a data.frame object.
>
> Here's how I created the *.RData file.
>
> library(RODBC)
> db<- odbcConnect("*******")
> df<- sqlQuery(
>      db
>    , "select * from schema.table where year(someDate)=2006"
> )
> save(
>      df
>    , file="C:/Documents and Settings/userName/My Documents/table2006.RData"
> )
> dim(df)
> remove(df)
> odbcClose(db)
> remove(db)
> detach("package:RODBC")
>
> Next, I moved that data file (table2006.RData) to another workstation - not
> at the client site.
>
> Now, I need to get that data file into a data.frame object.  I know this
> should be simple, but I can't seem to find out how to do that.  I tried the
> following.  First, after opening R without doing anything, RGui used 35,008
> KB of memory.  I submitted the following.
>
> >  debt2006<- load("T:/R.Data/table2006.RData")
>
> Memory used by RGui jumped to 191,512 KB.  So, it looks like the data
> loaded.  However, debt2005 is of type character instead of data.frame.
>
> >  ls()
> [1] "debt2005"
> >  class(debt2005)
> [1] "character"
> >
>
> Help, please.

save() and load() work with multiple objects, and the objects keep their 
names.  So your object would be recreated as "df" after the load.

If you just want to save the data from one object without its name, use 
saveRDS() and readRDS().

Duncan Murdoch



More information about the R-help mailing list