Função escondida - como achar

Amigos de R, Instalei o pacote SurvCorr que faz quase o que eu quero. Entao eu digitei no console
survcorr
E a função aparece no console. Eu a copiei para um script e fiz pequenas modificações pra poder se adequar a minha necessidade e renomiei a função para survcorr2 e salvei num arquivo. Quando fui testar percebi que há no final do script uma função chamada "pearson". Inicialmente eu achei que era uma função do pacote original. Então eu carreguei o pacote achando que a survcorr2 iria chamar a pearson do pacote survcorr, mas vem o aviso...
survcorr2(formula1 = Surv(los, desfecho.los) ~ 1, obj = y, obj2 = x2, data = bv) Error in survcorr2(formula1 = Surv(los, desfecho.los) ~ 1, obj = y, obj2 = x2, : could not find function "pearson"
Procurei na documentação e não achei em qualquer lugar essa função. Mesmo editando o script para onde essa função aparece como SurvCorr::pearson pra ter certeza que ele procura onde devia, não funciona. Ela tem que estar la em algum lugar porque o exemplo da survcorr original funciona muito bem. Eu já tinha me deparado com o problema de saber que a função existe e não conseguir olhar dentro da função, mas nunca tinha me deparado com não achar a função. Alguma luz em como achar essa função? Pedro Brasil

Pedro, Baixei o *.tar.gz do pacote SurvCorr; chequei no NAMESPACE e a função Pearson não é exportada. Mas logo na linha 2 do único arquivo em ~/R está a definição de dita cuja, como segue: ## Helper function for bivariate pearson correlation. pearson = function(data) { cormatrix = cor(data, method="pearson") cormatrix[1, 2] } Espero ter ajudado. att, FH 2016-11-25 12:16 GMT-06:00 Pedro Emmanuel Alvarenga Americano do Brasil via R-br <r-br@listas.c3sl.ufpr.br>:
Amigos de R,
Instalei o pacote SurvCorr que faz quase o que eu quero. Entao eu digitei no console
survcorr
E a função aparece no console. Eu a copiei para um script e fiz pequenas modificações pra poder se adequar a minha necessidade e renomiei a função para survcorr2 e salvei num arquivo. Quando fui testar percebi que há no final do script uma função chamada "pearson". Inicialmente eu achei que era uma função do pacote original. Então eu carreguei o pacote achando que a survcorr2 iria chamar a pearson do pacote survcorr, mas vem o aviso...
survcorr2(formula1 = Surv(los, desfecho.los) ~ 1, obj = y, obj2 = x2, data = bv) Error in survcorr2(formula1 = Surv(los, desfecho.los) ~ 1, obj = y, obj2 = x2, : could not find function "pearson"
Procurei na documentação e não achei em qualquer lugar essa função. Mesmo editando o script para onde essa função aparece como SurvCorr::pearson pra ter certeza que ele procura onde devia, não funciona.
Ela tem que estar la em algum lugar porque o exemplo da survcorr original funciona muito bem. Eu já tinha me deparado com o problema de saber que a função existe e não conseguir olhar dentro da função, mas nunca tinha me deparado com não achar a função.
Alguma luz em como achar essa função?
Pedro Brasil
_______________________________________________ R-br mailing list R-br@listas.c3sl.ufpr.br https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.

Olá, Quando você usar um 'library(pacote)", você, a grosso modo, está colocando os nomes de funções exportáveis daquele pacote dentro do ambiente global do R. Para acessar essas funções, você pode fazer "library(pacote)" e digitar o nome (como você fez) ou usar SurvCorr::survcorr com DOIS :: no console sem usar o library. Para objetos não exportáveis, você usa TRES ::: Portanto,
SurvCorr:::pearson function (data) { cormatrix = cor(data, method = "pearson") cormatrix[1, 2] } <environment: namespace:SurvCorr>
2016-11-25 16:16 GMT-02:00 Pedro Emmanuel Alvarenga Americano do Brasil via R-br <r-br@listas.c3sl.ufpr.br>:
Amigos de R,
Instalei o pacote SurvCorr que faz quase o que eu quero. Entao eu digitei no console
survcorr
E a função aparece no console. Eu a copiei para um script e fiz pequenas modificações pra poder se adequar a minha necessidade e renomiei a função para survcorr2 e salvei num arquivo. Quando fui testar percebi que há no final do script uma função chamada "pearson". Inicialmente eu achei que era uma função do pacote original. Então eu carreguei o pacote achando que a survcorr2 iria chamar a pearson do pacote survcorr, mas vem o aviso...
survcorr2(formula1 = Surv(los, desfecho.los) ~ 1, obj = y, obj2 = x2, data = bv) Error in survcorr2(formula1 = Surv(los, desfecho.los) ~ 1, obj = y, obj2 = x2, : could not find function "pearson"
Procurei na documentação e não achei em qualquer lugar essa função. Mesmo editando o script para onde essa função aparece como SurvCorr::pearson pra ter certeza que ele procura onde devia, não funciona.
Ela tem que estar la em algum lugar porque o exemplo da survcorr original funciona muito bem. Eu já tinha me deparado com o problema de saber que a função existe e não conseguir olhar dentro da função, mas nunca tinha me deparado com não achar a função.
Alguma luz em como achar essa função?
Pedro Brasil
_______________________________________________ R-br mailing list R-br@listas.c3sl.ufpr.br https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.
participantes (3)
-
FHRB Toledo
-
Pedro Emmanuel Alvarenga Americano do Brasil
-
Tiago Fragoso