Para facilitar a vida de um
usuário leigo, eu criei uma função para excluir as colunas de
uma tabela, conforme código abaixo:
- remove.variables <-
function(dataset.name,
vars.to.remove)
- {
- # scan the variables to be
removed
- for (x in 1 :
length(vars.to.remove))
- {
- # transform
command.Remove in "data$variable <- NULL"
- command.Remove <-
paste(dataset.name,"$",vars.to.remove[x],
" <- NULL",sep="")
- # execute the command
- command.Remove <-
eval(parse(text=command.Remove))
- } # for (x in 1 :
length(vars.to.remove))
- } # remove.variables <-
function(dataset.name,
vars.to.remove)
Fazendo um teste local, ou seja, executando o
procedimento abaixo com as variáveis
dataset.name, vars.to.remove
carregadas respectivamente com o nome do meu data frame
"data" e com o nome de duas variáveis "var1" e "var5" a
serem removidas e executando da linha 2 a 11 tudo tunciona
bem e as colunas são removidas.
vars.to.remove<-c("var1", "var5")
No entanto se carrego a função e executo os procedimentos
abaixo em outro script, a função é executada sem erro, mas
não remove nenhuma coluna do data frame:
vars.to.remove = c("var1", "var5")
Eu acredito que tem a ver com o ambiente, acesso global
algo assim mas não estou achando a solução.
Agradeço se aguem puder me ajudar.