Message-ID: <1191B6D4-850B-44BD-9AF5-636FAB5232D2@eawag.ch>
Date: 2009-11-22T11:26:33Z
From: Soeren.Vogel at eawag.ch
Subject: 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