[R] Help pasting string as object name
Rob Denniker
bearmarketsrule at inbox.com
Fri Apr 3 18:27:11 CEST 2009
What a very useful package! Thanks for pointing out its existence.
Sadly ?melt is basically useless, but I did find the following quasi-vignette by the author of the reshape package to be quite useful. http://www.jstatsoft.org/v21/i12/paper
Cheers.
> -----Original Message-----
> From: ba208 at exeter.ac.uk
> Sent: Fri, 3 Apr 2009 11:02:31 +0100
> To: bearmarketsrule at inbox.com
> Subject: Re: [R] Help pasting string as object name
>
> Hi,
>
> Is this what you want?
>
> d <- data.frame(density.AL = seq(1, 10),
> density.AK = seq(1, 10), # many others...
> Date=letters[1:10]) # dummy example
>
> library(reshape)
> melt(subset(d, Date == "b"), id="Date")
>
>
> BTW, I spotted a few awkward things in your code,
>
>
> st <- c("AL", "AK")
> vars <- paste("d$density", st, sep=".") # easier than mapply etc.
>
> more importantly, in the for loop you should not be incrementing i
> manually (as in a while loop), it's already taken care of by the for{}
> construct.
>
>
>
> HTH,
>
> baptiste
>
> On 3 Apr 2009, at 10:40, Rob Denniker wrote:
>
>> I have a data frame containing monthly observations of the 'density'
>> of each US state, recorded in variables named "density.AL",
>> "density.AK", "density.AZ", and so on for all 50 states. The data
>> frame (called d) also contains a variable called "Date" which is
>> encoded as a string in the format "Jan-09", "Feb-09", etc.
>>
>> I also have a vector st.list<-c("AL", "AK", "AZ",...) of length 50.
>>
>> I would like a new dataframe with st.list in one column and the
>> value of "d$density" for that state when d$Date==Feb-09 in another
>> column.
>>
>> How can I do this?
>>
>> Here is what I have tried:
>>
>> names <- rep("d$density",length(st.list))
>> templist <- as.vector(mapply(paste, names, st.list ,sep="."))
>>
>> d.2<-data.frame()
>> for (i in 1:length(templist)) {
>> d.2$density[i] <- subset(parse(file="",templist[i]),d$Date=="Feb-09")
>> i<-i+1 } ### hangs!
>>
>>
>> Thanks for any help!
>>
>> ____________________________________________________________
>> GET FREE 5GB EMAIL - Check out spam free email with many cool
>> features!
>> Visit http://www.inbox.com/email to find out more!
>>
>> ______________________________________________
>> R-help at r-project.org mailing list
>> https://stat.ethz.ch/mailman/listinfo/r-help
>> PLEASE do read the posting guide
>> http://www.R-project.org/posting-guide.html
>> and provide commented, minimal, self-contained, reproducible code.
>
> _____________________________
>
> Baptiste Auguié
>
> School of Physics
> University of Exeter
> Stocker Road,
> Exeter, Devon,
> EX4 4QL, UK
>
> Phone: +44 1392 264187
>
> http://newton.ex.ac.uk/research/emag
> ______________________________
____________________________________________________________
GET FREE 5GB EMAIL - Check out spam free email with many cool features!
Visit http://www.inbox.com/email to find out more!
More information about the R-help
mailing list