[R-br] Passar parâmetro para with() dentro de uma função

Rodrigo Coster rcoster em gmail.com
Segunda Agosto 19 16:24:17 BRT 2013


Caros,

eu tenho uma função que me retorna um data.frame() com várias colunas que
vou utilizar para outros calculos. Eu queria facilitar a minha vida e
colocar esses calculos dentro da função, como um parâmetro (dado que não
existe somente um calculo). Encontrei uma maneira de fazer isso fora da
função pelo with() ou até mesmo evalq(), só que não consegui fazer isso
dentro da função. Eu entendo os erros que dão e concordo com eles, mas não
consegui encontrar uma maneira que funcione.

Basicamente é isso:

dados <- data.frame(x=1:10, v1=rnorm(10), v2=rnorm(10))

with(dados, v1+v2) # Fora da função funciona

func <- function(data, func) {
 with(dados, func)
}
func(dados, v1+v2) # Da erro na hora de chamar a função
func(dados, 'v1+v2') # Retorna o string

Alguma sugestão/solução?
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://listas.inf.ufpr.br/pipermail/r-br/attachments/20130819/02f5c0c8/attachment.html>


Mais detalhes sobre a lista de discussão R-br