Dan Abner
2011-May-07 08:16 UTC
[R] Printing a title for an object in the console when writing a function XXXX
Hello everyone, What is the best way to have R print a title and then skip a line (both without the [1] line preffix) when writing a function that prints an object (to the console)? Simplified example: fn3<-function(x,y){ c1<-cov(x,y) print(c1)} data1<-data.frame(age=rnorm(50),weight=rnorm(50)) attach(data1) fn3(age,weight) ==== How do I have R print a nicely formatted title when printing c1 to the console? Thanks, Dan [[alternative HTML version deleted]]
David Winsemius
2011-May-07 13:42 UTC
[R] Printing a title for an object in the console when writing a function XXXX
On May 7, 2011, at 4:16 AM, Dan Abner wrote:> Hello everyone, > > What is the best way to have R print a title and then skip a line > (both > without the [1] line preffix) when writing a function that prints an > object > (to the console)? Simplified example: > > > fn3<-function(x,y){ > > c1<-cov(x,y) > > print(c1)}?cat fn3<-function(x,y){ cat("Please examine this beautiful title\n") c1<-cov(x,y) cat(" ... here is your covariance ... \n", c1)}> > data1<-data.frame(age=rnorm(50),weight=rnorm(50)) > > #### attach(data1) > # Do not use attach, especially with objects named 'data1' and > columns named 'weight'# Here is what I saw on my system #> attach(data1) #The following object(s) are masked _by_ '.GlobalEnv': # # weight # there was already a weight object in the workspace and the # interpreter did not know which one to use # and it was telling me it had 'decided' to use the other one # So .... instead use with() as below: > with(data1, fn3(age,weight) ) # output ... Please examine this beautiful title ... here is your covariance ... 0.03096163> fn3(age,weight) > > ====> > How do I have R print a nicely formatted title when printing c1 to the > console? >(And Dan, if you are a member of this list, then be advised that putting 'XXXX' in your subject line is going to get you email held by the spambot that 'thinks' you are advertising something more interesting than statistics.) David Winsemius, MD West Hartford, CT