[R] svm with GRASS GIS

giuseppe calamita calamita_giuseppe at yahoo.it
Sun Feb 26 16:12:46 CET 2012

Dear Ethienne, thanks a lot for your help.
We finally manage to perform the svm classification in this  way:

library(spgrass6) ; G <- gmeta6()

TL_training_2006_id.raw<-readRAST6("TL_training_2006_id") #  classes
training area 

#bands training area 

#bands, complete data

#transform classes from numeric to factor
is.numeric(TL_training_2006_id.raw at data$TL_training_2006_id) #TRUE
class(TL_training_2006_id.raw at data$TL_training_2006_id) #numeric
TL_training_2006_id.raw at data$TL_training_2006_id <-
as.factor(TL_training_2006_id.raw at data$TL_training_2006_id)

# create NA mask using complete.cases()
TL_training_2006_id.na_mask <- complete.cases(TL_training_2006_id.raw at data)
B1_B2_B3_train.na_mask <-complete.cases(B1_B2_B3_train.raw at data)
B1_B2_B3_compl.na_mask <-complete.cases(B1_B2_B3_compl.raw at data)

# get values based on na_mask
TL_training_2006_id <-
TL_training_2006_id.raw at data[TL_training_2006_id.na_mask, ] 
B1_B2_B3_train <- B1_B2_B3_train.raw at data[B1_B2_B3_train.na_mask, ]
B1_B2_B3_compl <- B1_B2_B3_compl.raw at data[B1_B2_B3_compl.na_mask, ]

# create SVM model
x <- B1_B2_B3_train
y <- TL_training_2006_id
model_ASTER <- svm(x,y)

pred <- predict(model_ASTER, B1_B2_B3_compl.raw at data)
#same as:
pred <- predict(model_ASTER, B1_B2_B3_compl.raw at data[B1_B2_B3_compl.na_mask,
], locations=coordinates(utm_wgs84))

#now the issue is that the "pred" object is
 Factor w/ 4 levels "2","3","4","5": 3 3 3 3 3 3 3 3 3 3 ...
 - attr(*, "names")= chr [1:920591] "24389" "24390" "24391" "25729" ...

that is, it contains the predicted(classified) values but it is not an S4
object SGDF

Do you have any advice on how to tranform it back in SGDF having the

Thankyou ! 


View this message in context: http://r.789695.n4.nabble.com/svm-with-GRASS-GIS-tp4388006p4422281.html
Sent from the R help mailing list archive at Nabble.com.

More information about the R-help mailing list