Por que usar a atribuição é ruim?
Esta postagem (Avaliação preguiçosa em R - é atribuído afetado?) abrange alguns pontos comuns, mas não tenho a certeza se responde à minha pergunta.
Parei de usarassign
quando descobri oapply
família um bom tempo atrás, embora, puramente por razões de elegância em situações como esta:
names.foo <- letters
values.foo <- LETTERS
for (i in 1:length(names.foo))
assign(names.foo[i], paste("This is: ", values.foo[i]))
que pode ser substituído por:
foo <- lapply(X=values.foo, FUN=function (k) paste("This is :", k))
names(foo) <- names.foo
Esta é também a razão disso (http://cran.r-project.org/doc/FAQ/R-FAQ.html#How-can-I-turn-a-string-into-a-variable_003f) R-faq diz que isso deve ser evitado.
Agora eu sei dissoassign
geralmente é desaprovado. Mas existem outras razões que eu não sei? Eu suspeito que pode mexer com a avaliação escopo ou preguiçoso, mas não tenho certeza? Exemplo de código que demonstra tais problemas será ótimo.