Dear all, I would like to log the calls to my functions. I am trying to do this using the function match.call(): fTest<-function(x) { theCall<-match.call() print(theCall) return(x) }> fTest(2)fTest(x = 2) [1] 2 I can see "theCall" printed into the console, but I don't manage to convert it into a character to write it into a log file with other informations. Can anyone help? Many thanks, Samuel [[alternative HTML version deleted]]
On Apr 3, 2011, at 12:14 PM, Samuel Le wrote:> Dear all, > > > > I would like to log the calls to my functions. I am trying to do > this using the function match.call():fTest<-function(x) { theCall<-match.call() print(theCall) return(list(x=x, logf = theCall)) }>> fTest(x=2)$x [1] 2 > fTest(x=2)$logf fTest(x = 2) > str(fTest(x=2)$logf) language fTest(x = 2) You may want to convert that call component to a character object, since: > cat(fTest(x=2)$logf) Error in cat(list(...), file, sep, fill, labels, append) : argument 1 (type 'language') cannot be handled by 'cat'> > I can see "theCall" printed into the console, but I don't manage to > convert it into a character to write it into a log file with other > informations. > > Can anyone help?David Winsemius, MD West Hartford, CT
On Sun, Apr 3, 2011 at 12:14 PM, Samuel Le <Samuel.Le at srlglobal.com> wrote:> Dear all, > > > > I would like to log the calls to my functions. I am trying to do this using the function match.call(): > > > > fTest<-function(x) > > { > > ? ? ?theCall<-match.call() > > ? ? ?print(theCall) > > ? ? ?return(x) > > } > > > >> fTest(2) > > fTest(x = 2) > > [1] 2 > > > > I can see "theCall" printed into the console, but I don't manage to convert it into a character to write it into a log file with other informations. >See ?trace -- Statistics & Software Consulting GKX Group, GKX Associates Inc. tel: 1-877-GKX-GROUP email: ggrothendieck at gmail.com