Re: [R] getting a variable from an object named using paste

From: Uwe Ligges <ligges_at_statistik.uni-dortmund.de>
Date: Sat 09 Jul 2005 - 22:30:45 EST

Constantinos Antoniou wrote:
> Hello,
>
> The subject could be articulated better ;(, but I am stuck...
>
> In any case, my problem is the following: I am trying to use knn, and
> it requires a classification. So I am using cmeans for this. What I
> want to do is add the classification as a new column in my data.frame
> (to be used for knn). Now, the trick is that I would like to name the
> output of the cmeans classification based on the number of clusters
> (e.g. cmeans30 for 30 clusters). To do this, I do the following:
>
>
> [The file for this example can be downloaded from:
>
> http://mit.edu/costas/www/station-1-120103.txt ]
>
>
> library(e1071)
> lala <- read.csv("station-1-120103.txt",header=F)
> ll <- cbind(lala$V25,lala$V22)
> num.of.clust=50
> assign(paste("cmeans",num.of.clust,sep=""),cmeans(ll,num.of.clust))
>
> and sure enough if I type cmeans50 I get the output of this cmeans run.
>
> This also works, naturally:
>
> llc<-cbind(ll,cmeans50$cluster)
>
> [and I now get three columns, where the third column is the cluster ID.]
>
> However, when I do what I really want (i.e. not call cmeans50
> explicitly, but through the name that I constructed programmatically):
>
> llc <- cbind(ll,(paste("cmeans",num.of.clust,sep=""))$cluster)

This is a FAQ: use get()

Uwe Ligges

> I only get two columns (the last term has no effect).
>
> Any ideas as to what I am doing wrong?
>
> Thanks a lot!
>
> Costas
>
>
>



R-help@stat.math.ethz.ch mailing list
https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html Received on Sat Jul 09 22:32:42 2005

This archive was generated by hypermail 2.1.8 : Fri 03 Mar 2006 - 03:33:26 EST