
A notacao '%any%' quer dizer dois sinais '%' intercalados por uma "palavra magica". Por exemplo, '%in%'... 1:10 %in% c(4, 1, 19, 9) A respeito dos '::' e ':::', voce vai precisar dar uma olhadinha na definicao de 'name space' em linguagens de programacao. De forma geral, lembre-se que um pacote pode ter funcoes 'publicas' (ie., as funcoes que vc, enqto usuario, consegue enxergar) e funcoes 'privadas' (invisiveis para o usuario final, mas usadas internamente nos pacotes). Dito isso, '::' te da' acesso a funcoes publicas de um pacote, ao passo que ':::' te da' acesso a funcoes privadas (voce, enqto usuario, nao deve usar ':::' - salvo alguma rarissima excecao, como uma falha na producao de um pacote). A notacao empregada para os dois ultimos operadores e': pacote::funcaoPublica pacote:::funcaoPrivada Por exemplo, o pacote 'stats' (padrao) tem a funcao publica que vc conhece 'var'. Voce pode acessa-la usando: var(1:8) ou stats::var(1:8) A vantagem de voce poder fazer isso e': suponha que voce crie uma outra funcao tambem chamada 'var'... dai' voce ainda pode usar a 'var' original. Por exemplo: var <- function(x) message('Essa funcao deveria retornar a variancia.') E agora compare: var(1:8) e stats::var(1:8) Sobre ':::' - eu sei que o pacote nlme tem uma funcao que e' usada apenas internamente... e ela e', em teoria, desconhecida pelos usuarios finais: fitted.gnls . Experimente: library(nlme) fitted.gnls e nlme::fitted.gnls ##tbm vai falhar, pois ela nao eh publica... e nlme:::fitted.gnls ## aqui ela aparece Novamente, nao se preocupe com funcoes que sao acessadas por ':::' - se uma funcao eh privada, eh pq nao se espera que o usuario final vah emprega-la. b