As Sarah has said, you probably don't need to use "paste()" at all.  However
if "command" is a text string containing a (syntactically correct) R command
you can execute it via

    eval(parse(text=command))

E.g.:

    command <- "x <- 42"
    eval(parse(text=command))
    x
    [1] 42

I find this to be a useful trick in quite a few contexts.

    cheers,

        Rolf Turner

On 23/08/11 08:43, Sarah Goslee wrote:
Juta,

On Mon, Aug 22, 2011 at 4:29 PM, Juta Kawalerowicz
<juta.kawalerow...@stx.ox.ac.uk>  wrote:
Dear list,

I have a spacialPolygonDataFrame where variables were unnecessarily imported as 
factors. So I am trying to unfactor variables from spatialPolygonDataFrame@data 
with a loop


for (i in (1:length(names( spatialPolygonDataFrame)))){


command<-paste("spatialPolygonDataFrame$names(spatialPolygonDataFrame@data[",i,"])<-as.character(
 spatialPolygonDataFrame$names( spatialPolygonDataFrame@data[",i,"])")
command<-noquote(command)
command

}


But I keep getting just a printout
Yeah, you're putting together a string, not actually running any commands.

Does this not work:

for (i in (1:length(names( spatialPolygonDataFrame)))){

spatialPolygonDataFrame$names(spatialPolygonDataFrame@data[i])<-
as.character( spatialPolygonDataFrame$names(
spatialPolygonDataFrame@data[i]))

}

Subsetting on a variable should work just fine. I don't see any need for
paste().

Sarah

______________________________________________
R-help@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.

Reply via email to