Dear Agustin,

I think that using the script paste("\"","Hola","\"",sep="") will do the job anyway. Yes, you would get "\"Hola\"" as a result but when you pass the script to GRASS the \ symbol will not be considered and so you will get the string you are looking for.

a <- "v.extract codigo_Montseny07_clump"
b <- paste("out=extract", 11917, sep="")
c <- paste("(GRIDCODE = ", 11917, ")", sep="")
c <- paste("where=\"", c, "\"",sep="")

string <- paste(a,b,c, sep=" ")
system(string)

string
[1] "v.extract codigo_Montseny07_clump out=extract11917 where=\"(GRIDCODE = 11917)\""

When the command is read in GRASS the \ symbol will mean move to the next line in the console.

Best,

Jaime -R


On Wed, 22 Apr 2009 10:31:55 +0200, Agustin Lobo <alobolis...@gmail.com> wrote:

I wish to write  "" using paste(), but

paste("\"","Hola","\"",sep="")
[1] "\"Hola\""


while the same approach works with ''
paste("\'","Hola","\'",sep="")
[1] "'Hola'"

why this difference? how could I do it to get "Hola" ?

I need this to write this string in R:
v.extract codigo_Montseny07_clump out=extract11917 where="(GRIDCODE =
11917)"

and pass it to grass. Something like:
for (i in polis){
    system("g.region vect=codigo_Montseny07_clump")
    nomextract <- paste("extract",i,sep="")
    grcomm <- paste("v.extract codigo_Montseny07_clump out=",nomextract,
" where=\"(GRIDCODE = ",i,")\" ",sep="")
    system(grcomm)

...

Thanks

Agus

_______________________________________________
R-sig-Geo mailing list
R-sig-Geo@stat.math.ethz.ch
https://stat.ethz.ch/mailman/listinfo/r-sig-geo

Reply via email to