Gregory (Greg) L. Snow Ph.D.
Statistical Data Center
Intermountain Healthcare
greg.snow at imail.org
801.408.8111
> -----Original Message-----
> From: r-help-bounces at r-project.org [mailto:r-help-bounces at r-
> project.org] On Behalf Of Soeren.Vogel at eawag.ch
> Sent: Sunday, November 22, 2009 4:27 AM
> To: r-help at r-project.org
> Subject: [R] Define return values of a function
>
> I have created a function to do something:
>
> i <- factor(sample(c("A", "B", "C", NA), 793, rep=T, prob=c(8, 7, 5,
> 1)))
> k <- factor(sample(c("X", "Y", "Z", NA), 793, rep=T, prob=c(12, 7, 9,
> 1)))
> mytable <- function(x){
> xtb <- x
> btx <- x
> # do more with x, not relevant here
> cat("The table has been created, see here:\n")
> print(xtb)
> list(table=xtb, elbat=btx)
> }
> tbl <- table(i, k)
> mytable(tbl) # (1)
> z <- mytable(tbl) # (2)
> str(z) # (3)
>
> (1) Wanted: outputs the string and the table properly. *Unwanted*:
> outputs the list elements.
>
> (2) and (3) Wanted: outputs the string properly. Wanted: assigns the
> list properly.
>
> How can I get rid of the *unwanted* part? That is, how do I define
> what the functions prints and -- on the other hand -- what it returns
> without printing?
>
> Thanks
>
> S?ren
>
> --
> S?ren Vogel, Dipl.-Psych. (Univ.), PhD-Student, Eawag, Dept. SIAM
> http://www.eawag.ch, http://sozmod.eawag.ch
>
> ______________________________________________
> R-help at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide http://www.R-project.org/posting-
> guide.html
> and provide commented, minimal, self-contained, reproducible code.