Skip to content
Prev 302286 / 398503 Next

Recursive function calls

Hello,

This seems to work.

trim2 <- function(x) {
     if(is.atomic(x))
         gsub("^[[:space:]]+|[[:space:]]+$", "", x)
     else
         sapply(x, function(y) trim2(y))
}

# Tests
trim2(tempobj)
trim2(tempvec)
trim2(templist)
trim2(tempdf)

# Extra test
templistlist <- list(templist, list(tempobj, tempdf))
trim2(templistlist)

Note, however, that the df is not returned as a df:

 > class(trim2(tempdf))
[1] "matrix"

Hope this helps,

Rui Barradas
Em 03-08-2012 17:12, Gene Leynes escreveu: